PageSourceSearch

https://app.swishlive.com/assets/firebase-firestore-s43QHZkQ.js

js swishlive.com collected 2026-10-07 13:12:39 UTC 458,099 bytes, 32 lines download raw bytes

vendor: 5,080 bytes, line 1
1var e=()=>void 0,t=function(e){let t=[],n=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);i<128?t[n++]=i:i<2048?(t[n++]=i>>6|192,t[n++]=i&63|128):(i&64512)==55296&&r+1<e.length&&(e.charCodeAt(r+1)&64512)==56320?(i=65536+((i&1023)<<10)+(e.charCodeAt(++r)&1023),t[n++]=i>>18|240,t[n++]=i>>12&63|128,t[n++]=i>>6&63|128,t[n++]=i&63|128):(t[n++]=i>>12|224,t[n++]=i>>6&63|128,t[n++]=i&63|128)}return t},n=function(e){let t=[],n=0,r=0;for(;n<e.length;){let i=e[n++];if(i<128)t[r++]=String.fromCharCode(i);else if(i>191&&i<224){let a=e[n++];t[r++]=String.fromCharCode((i&31)<<6|a&63)}else if(i>239&&i<365){let a=e[n++],o=e[n++],s=e[n++],c=((i&7)<<18|(a&63)<<12|(o&63)<<6|s&63)-65536;t[r++]=String.fromCharCode(55296+(c>>10)),t[r++]=String.fromCharCode(56320+(c&1023))}else{let a=e[n++],o=e[n++];t[r++]=String.fromCharCode((i&15)<<12|(a&63)<<6|o&63)}}return t.join(``)},r={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789`,get ENCODED_VALS(){return this.ENCODED_VALS_BASE+`+/=`},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+`-_.`},HAS_NATIVE_SUPPORT:typeof atob==`function`,encodeByteArray(e,t){if(!Array.isArray(e))throw Error(`encodeByteArray takes an array as a parameter`);this.init_();let n=t?this.byteToCharMapWebSafe_:this.byteToCharMap_,r=[];for(let t=0;t<e.length;t+=3){let i=e[t],a=t+1<e.length,o=a?e[t+1]:0,s=t+2<e.length,c=s?e[t+2]:0,l=i>>2,u=(i&3)<<4|o>>4,d=(o&15)<<2|c>>6,f=c&63;s||(f=64,a||(d=64)),r.push(n[l],n[u],n[d],n[f])}return r.join(``)},encodeString(e,n){return this.HAS_NATIVE_SUPPORT&&!n?btoa(e):this.encodeByteArray(t(e),n)},decodeString(e,t){return this.HAS_NATIVE_SUPPORT&&!t?atob(e):n(this.decodeStringToByteArray(e,t))},decodeStringToByteArray(e,t){this.init_();let n=t?this.charToByteMapWebSafe_:this.charToByteMap_,r=[];for(let t=0;t<e.length;){let a=n[e.charAt(t++)],o=t<e.length?n[e.charAt(t)]:0;++t;let s=t<e.length?n[e.charAt(t)]:64;++t;let c=t<e.length?n[e.charAt(t)]:64;if(++t,a==null||o==null||s==null||c==null)throw new i;let l=a<<2|o>>4;if(r.push(l),s!==64){let e=o<<4&240|s>>2;if(r.push(e),c!==64){let e=s<<6&192|c;r.push(e)}}}return r},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let e=0;e<this.ENCODED_VALS.length;e++)this.byteToCharMap_[e]=this.ENCODED_VALS.charAt(e),this.charToByteMap_[this.byteToCharMap_[e]]=e,this.byteToCharMapWebSafe_[e]=this.ENCODED_VALS_WEBSAFE.charAt(e),this.charToByteMapWebSafe_[this.byteToCharMapWebSafe_[e]]=e,e>=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(e)]=e,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(e)]=e)}}},i=class extends Error{constructor(){super(...arguments),this.name=`DecodeBase64StringError`}},a=function(e){let n=t(e);return r.encodeByteArray(n,!0)},o=function(e){return a(e).replace(/\./g,``)},s=function(e){try{return r.decodeString(e,!0)}catch(e){console.error(`base64Decode failed: `,e)}return null};function c(){if(typeof self<`u`)return self;if(typeof window<`u`)return window;if(typeof global<`u`)return global;throw Error(`Unable to locate global object.`)}var l=()=>c().__FIREBASE_DEFAULTS__,u=()=>{if(typeof process>`u`)return;let e={}.__FIREBASE_DEFAULTS__;if(e)return JSON.parse(e)},d=()=>{if(typeof document>`u`)return;let e;try{e=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}let t=e&&s(e[1]);return t&&JSON.parse(t)},f=()=>{try{return e()||l()||u()||d()}catch(e){console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${e}`);return}},p=e=>f()?.emulatorHosts?.[e],m=e=>{let t=p(e);if(!t)return;let n=t.lastIndexOf(`:`);if(n<=0||n+1===t.length)throw Error(`Invalid host ${t} with no separate hostname and port!`);let r=parseInt(t.substring(n+1),10);return t[0]===`[`?[t.substring(1,n-1),r]:[t.substring(0,n),r]},h=()=>f()?.config,g=e=>f()?.[`_${e}`],ee=class{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}wrapCallback(e){return(t,n)=>{t?this.reject(t):this.resolve(n),typeof e==`function`&&(this.promise.catch(()=>{}),e.length===1?e(t):e(t,n))}}};function te(e,t){if(e.uid)throw Error(`The "uid" field is no longer supported by mockUserToken. Please use "sub" instead for Firebase Auth User ID.`);let n={alg:`none`,type:`JWT`},r=t||`demo-project`,i=e.iat||0,a=e.sub||e.user_id;if(!a)throw Error(`mockUserToken must contain 'sub' or 'user_id' field!`);let s={iss:`https://securetoken.google.com/${r}`,aud:r,iat:i,exp:i+3600,auth_time:i,sub:a,user_id:a,firebase:{sign_in_provider:`custom`,identities:{}},...e};return[o(JSON.stringify(n)),o(JSON.stringify(s)),``].join(`.`)}function ne(){return typeof navigator<`u`&&typeof navigator.userAgent==`string`?navigator.userAgent:``}function re(){return typeof window<`u`&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(ne())}function ie(){let e=f()?.forceEnvironment;if(e===`node`)return!0;
1if(e===`browser`)return!1;try{return Object.prototype.toString.call(global.process)===`[object process]`}catch{return!1}}function ae(){return typeof navigator<`u`&&navigator.userAgent===`Cloudflare-Workers`}function oe(){let e=typeof chrome==`object`?chrome.runtime:typeof browser==`object`?browser.runtime:void 0;return typeof e==`object`&&e.id!==void 0}function se(){return typeof navigator==`object`&&navigator.product===`ReactNative`}function ce(){let e=ne();return e.indexOf(`MSIE `)>=0||e.indexOf(`Trident/`)>=0}function le(){return!ie()&&!!navigator.userAgent&&navigator.userAgent.includes(`Safari`)&&!navigator.userAgent.includes(`Chrome`)}function ue(){try{return typeof indexedDB==`object`}catch{return!1}}function de(){return new Promise((e,t)=>{try{let n=!0,r=`validate-browser-context-for-indexeddb-analytics-module`,i=self.indexedDB.open(r);i.onsuccess=()=>{i.result.close(),n||self.indexedDB.deleteDatabase(r),e(!0)},i.onupgradeneeded=()=>{n=!1},i.onerror=()=>{t(i.error?.message||``)}}catch(e){t(e)}})}var fe=`FirebaseError`,pe=class e extends Error{constructor(t,n,r){super(n),this.code=t,this.customData=r,this.name=fe,Object.setPrototypeOf(this,e.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,me.prototype.create)}},me=class{constructor(e,t,n){this.service=e,this.serviceName=t,this.errors=n}create(e,...t){let n=t[0]||{},r=`${this.service}/${e}`,i=this.errors[e],a=i?he(i,n):`Error`;return new pe(r,`${this.serviceName}: ${a} (${r}).`,n)}};function he(e,t){try{let n=0,r=``;for(;n<e.length;){let i=e.indexOf(`{$`,n);if(i===-1){r+=e.substring(n);break}let a=e.indexOf(`}`,i+2);if(a===-1){r+=e.substring(n);break}let o=e.substring(i+2,a),s=t[o];r+=e.substring(n,i)+(s==null?`<${o}?>`:String(s)),n=a+1}return r}catch{return e}}function ge(e,t){if(e===t)return!0;let n=Object.keys(e),r=Object.keys(t);for(let i of n){if(!r.includes(i))return!1;let n=e[i],a=t[i];if(_e(n)&&_e(a)){if(!ge(n,a))return!1}else if(n!==a)return!1}for(let e of r)if(!n.includes(e))return!1;return!0}function _e(e){return typeof e==`object`&&!!e}function ve(e){let t=[];for(let[n,r]of Object.entries(e))Array.isArray(r)?r.forEach(e=>{t.push(encodeURIComponent(n)+`=`+encodeURIComponent(e))}):t.push(encodeURIComponent(n)+`=`+encodeURIComponent(r));return t.length?`&`+t.join(`&`):``}function ye(e){let t={};return e.replace(/^\?/,``).split(`&`).forEach(e=>{if(e){let[n,r]=e.split(`=`);t[decodeURIComponent(n)]=decodeURIComponent(r)}}),t}function be(e){let t=e.indexOf(`?`);if(!t)return``;let n=e.indexOf(`#`,t);return e.substring(t,n>0?n:void 0)}function xe(e,t){let n=new Se(e,t);return n.subscribe.bind(n)}var Se=class{constructor(e,t){this.observers=[],this.unsubscribes=[],this.observerCount=0,this.task=Promise.resolve(),this.finalized=!1,this.onNoObservers=t,this.task.then(()=>{e(this)}).catch(e=>{this.error(e)})}next(e){this.forEachObserver(t=>{t.next(e)})}error(e){this.forEachObserver(t=>{t.error(e)}),this.close(e)}complete(){this.forEachObserver(e=>{e.complete()}),this.close()}subscribe(e,t,n){let r;if(e===void 0&&t===void 0&&n===void 0)throw Error(`Missing Observer.`);r=Ce(e,[`next`,`error`,`complete`])?e:{next:e,error:t,complete:n},r.next===void 0&&(r.next=we),r.error===void 0&&(r.error=we),r.complete===void 0&&(r.complete=we);let i=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then(()=>{try{this.finalError?r.error(this.finalError):r.complete()}catch{}}),this.observers.push(r),i}unsubscribeOne(e){this.observers!==void 0&&this.observers[e]!==void 0&&(delete this.observers[e],--this.observerCount,this.observerCount===0&&this.onNoObservers!==void 0&&this.onNoObservers(this))}forEachObserver(e){if(!this.finalized)for(let t=0;t<this.observers.length;t++)this.sendOne(t,e)}sendOne(e,t){this.task.then(()=>{if(this.observers!==void 0&&this.observers[e]!==void 0)try{t(this.observers[e])}catch(e){typeof console<`u`&&console.error&&console.error(e)}})}close(e){this.finalized||(this.finalized=!0,e!==void 0&&(this.finalError=e),this.task.then(()=>{this.observers=void 0,this.onNoObservers=void 0}))}};function Ce(e,t){if(typeof e!=`object`||!e)return!1;for(let n of t)if(n in e&&typeof e[n]==`function`)return!0;return!1}function we(){}var Te=1e3,Ee=2,De=144e5,Oe=.5;function ke(e,t=Te,n=Ee){let r=t*n**+e,i=Math.round(Oe*r*(Math.random()-.5)*2);return Math.min(De,r+i)}function Ae(e){return e&&e._delegate?e._delegate:e}function je(e){try{return(e.startsWith(`http://`)||e.startsWith(`https://`)?new URL(e).hostname:e).endsWith(`.cloudworkstations.dev`)}catch{return!1}}async function Me(e){return(await fetch(e,{credentials:`include`})).ok}var Ne=class{constructor(e,t,n){this.name=e,this.instanceFactory=t,this.type=n,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode=`LAZY`,this.onInstanceCreated=null}setInstantiationMode(e){return this.instantiationMode=e,this}setMultipleInstances(e){return this.multipleInstances=e,this}setServiceProps(e){return this.serviceProps=e,this}setInstanceCreatedCallback(e){return this.onInstanceCreated=e,this}},Pe=`[DEFAULT]`,Fe=class{constructor(e,t){this.name=e,this.container=t,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(e){let t=this.normalizeInstanceIdentifier(e);if(!this.instancesDeferred.has(t)){let e=new ee;if(this.instancesDeferred.set(t,e),this.isInitialized(t)||this.shouldAutoInitialize())try{let n=this.getOrInitializeService({instanceIdentifier:t});n&&e.resolve(n)}catch{}}return this.instancesDeferred.get(t).promise}getImmediate(e){let t=this.normalizeInstanceIdentifier(e?.identifier),n=e?.optional??!1;if(this.isInitialized(t)||this.shouldAutoInitialize())try{return this.getOrInitializeService({instanceIdentifier:t})}catch(e){if(n)return null;throw e}if(n)return null;throw Error(`Service ${this.name} is not available`)}getComponent(){return this.component}setComponent(e){if(e.name!==this.name)throw Error(`Mismatching Component ${e.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=e,this.shouldAutoInitialize()){if(Le(e))try{this.getOrInitializeService({instanceIdentifier:Pe})}catch{}for(let[e,t]of this.instancesDeferred.entries()){let n=this.normalizeInstanceIdentifier(e);try{let e=this.getOrInitializeService({instanceIdentifier:n});t.resolve(e)}catch{}}}}clearInstance(e=Pe){this.instancesDeferred.delete(e),this.instancesOptions.delete(e),this.instances.delete(e)}async delete(){let e=Array.from(this.instances.values());await Promise.all([...e.filter(e=>`INTERNAL`in e).map(e=>e.INTERNAL.delete()),...e.filter(e=>`_delete`in e).map(e=>e._delete())])}isComponentSet(){return this.component!=null}isInitialized(e=Pe){return this.instances.has(e)}getOptions(e=Pe){return this.instancesOptions.get(e)||{}}initialize(e={}){let{options:t={}}=e,n=this.normalizeInstanceIdentifier(e.instanceIdentifier);if(this.isInitialized(n))throw Error(`${this.name}(${n}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);let r=this.getOrInitializeService({instanceIdentifier:n,options:t});for(let[e,t]of this.instancesDeferred.entries())n===this.normalizeInstanceIdentifier(e)&&t.resolve(r);return r}onInit(e,t){let n=this.normalizeInstanceIdentifier(t),r=this.onInitCallbacks.get(n)??new Set;r.add(e),this.onInitCallbacks.set(n,r);let i=this.instances.get(n);return i&&e(i,n),()=>{r.delete(e)}}invokeOnInitCallbacks(e,t){let n=this.onInitCallbacks.get(t);if(n)for(let r of n)try{r(e,t)}catch{}}getOrInitializeService({instanceIdentifier:e,options:t={}}){let n=this.instances.get(e);if(!n&&this.component&&(n=this.component.instanceFactory(this.container,{instanceIdentifier:Ie(e),options:t}),this.instances.set(e,n),this.instancesOptions.set(e,t),this.invokeOnInitCallbacks(n,e),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,e,n)}catch{}return n||null}normalizeInstanceIdentifier(e=Pe){return this.component?this.component.multipleInstances?e:Pe:e}shouldAutoInitialize(){return!!this.component&&this.component.instantiationMode!==`EXPLICIT`}};function Ie(e){return e===Pe?void 0:e}function Le(e){return e.instantiationMode===`EAGER`}var Re=class{constructor(e){this.name=e,this.providers=new Map}addComponent(e){let t=this.getProvider(e.name);if(t.isComponentSet())throw Error(`Component ${e.name} has already been registered with ${this.name}`);t.setComponent(e)}addOrOverwriteComponent(e){this.getProvider(e.name).isComponentSet()&&this.providers.delete(e.name),this.addComponent(e)}getProvider(e){if(this.providers.has(e))return this.providers.get(e);let t=new Fe(e,this);return this.providers.set(e,t),t}getProviders(){return Array.from(this.providers.values())}},ze=[],_;(function(e){e[e.DEBUG=0]=`DEBUG`,e[e.VERBOSE=1]=`VERBOSE`,e[e.INFO=2]=`INFO`,e[e.WARN=3]=`WARN`,e[e.ERROR=4]=`ERROR`,e[e.SILENT=5]=`SILENT`})(_||={});var Be={debug:_.DEBUG,verbose:_.VERBOSE,info:_.INFO,warn:_.WARN,error:_.ERROR,silent:_.SILENT},Ve=_.INFO,He={[_.DEBUG]:`log`,[_.VERBOSE]:`log`,[_.INFO]:`info`,[_.WARN]:`warn`,[_.ERROR]:`error`},Ue=(e,t,...n)=>{if(t<e.logLevel)return;let r=new Date().toISOString(),i=He[t];if(i)console[i](`[${r}]  ${e.name}:`,...n);
vendor: 10,288 bytes, line 1
1else throw Error(`Attempted to log a message with an invalid logType (value: ${t})`)},We=class{constructor(e){this.name=e,this._logLevel=Ve,this._logHandler=Ue,this._userLogHandler=null,ze.push(this)}get logLevel(){return this._logLevel}set logLevel(e){if(!(e in _))throw TypeError(`Invalid value "${e}" assigned to \`logLevel\``);this._logLevel=e}setLogLevel(e){this._logLevel=typeof e==`string`?Be[e]:e}get logHandler(){return this._logHandler}set logHandler(e){if(typeof e!=`function`)throw TypeError("Value assigned to `logHandler` must be a function");this._logHandler=e}get userLogHandler(){return this._userLogHandler}set userLogHandler(e){this._userLogHandler=e}debug(...e){this._userLogHandler&&this._userLogHandler(this,_.DEBUG,...e),this._logHandler(this,_.DEBUG,...e)}log(...e){this._userLogHandler&&this._userLogHandler(this,_.VERBOSE,...e),this._logHandler(this,_.VERBOSE,...e)}info(...e){this._userLogHandler&&this._userLogHandler(this,_.INFO,...e),this._logHandler(this,_.INFO,...e)}warn(...e){this._userLogHandler&&this._userLogHandler(this,_.WARN,...e),this._logHandler(this,_.WARN,...e)}error(...e){this._userLogHandler&&this._userLogHandler(this,_.ERROR,...e),this._logHandler(this,_.ERROR,...e)}},Ge=(e,t)=>t.some(t=>e instanceof t),Ke,qe;function Je(){return Ke||=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction]}function Ye(){return qe||=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey]}var Xe=new WeakMap,Ze=new WeakMap,Qe=new WeakMap,$e=new WeakMap,et=new WeakMap;function tt(e){let t=new Promise((t,n)=>{let r=()=>{e.removeEventListener(`success`,i),e.removeEventListener(`error`,a)},i=()=>{t(v(e.result)),r()},a=()=>{n(e.error),r()};e.addEventListener(`success`,i),e.addEventListener(`error`,a)});return t.then(t=>{t instanceof IDBCursor&&Xe.set(t,e)}).catch(()=>{}),et.set(t,e),t}function nt(e){if(Ze.has(e))return;let t=new Promise((t,n)=>{let r=()=>{e.removeEventListener(`complete`,i),e.removeEventListener(`error`,a),e.removeEventListener(`abort`,a)},i=()=>{t(),r()},a=()=>{n(e.error||new DOMException(`AbortError`,`AbortError`)),r()};e.addEventListener(`complete`,i),e.addEventListener(`error`,a),e.addEventListener(`abort`,a)});Ze.set(e,t)}var rt={get(e,t,n){if(e instanceof IDBTransaction){if(t===`done`)return Ze.get(e);if(t===`objectStoreNames`)return e.objectStoreNames||Qe.get(e);if(t===`store`)return n.objectStoreNames[1]?void 0:n.objectStore(n.objectStoreNames[0])}return v(e[t])},set(e,t,n){return e[t]=n,!0},has(e,t){return e instanceof IDBTransaction&&(t===`done`||t===`store`)||t in e}};function it(e){rt=e(rt)}function at(e){return e===IDBDatabase.prototype.transaction&&!(`objectStoreNames`in IDBTransaction.prototype)?function(t,...n){let r=e.call(st(this),t,...n);return Qe.set(r,t.sort?t.sort():[t]),v(r)}:Ye().includes(e)?function(...t){return e.apply(st(this),t),v(Xe.get(this))}:function(...t){return v(e.apply(st(this),t))}}function ot(e){return typeof e==`function`?at(e):(e instanceof IDBTransaction&&nt(e),Ge(e,Je())?new Proxy(e,rt):e)}function v(e){if(e instanceof IDBRequest)return tt(e);if($e.has(e))return $e.get(e);let t=ot(e);return t!==e&&($e.set(e,t),et.set(t,e)),t}var st=e=>et.get(e);function ct(e,t,{blocked:n,upgrade:r,blocking:i,terminated:a}={}){let o=indexedDB.open(e,t),s=v(o);return r&&o.addEventListener(`upgradeneeded`,e=>{r(v(o.result),e.oldVersion,e.newVersion,v(o.transaction),e)}),n&&o.addEventListener(`blocked`,e=>n(e.oldVersion,e.newVersion,e)),s.then(e=>{a&&e.addEventListener(`close`,()=>a()),i&&e.addEventListener(`versionchange`,e=>i(e.oldVersion,e.newVersion,e))}).catch(()=>{}),s}var lt=[`get`,`getKey`,`getAll`,`getAllKeys`,`count`],ut=[`put`,`add`,`delete`,`clear`],dt=new Map;function ft(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t==`string`))return;if(dt.get(t))return dt.get(t);let n=t.replace(/FromIndex$/,``),r=t!==n,i=ut.includes(n);if(!(n in(r?IDBIndex:IDBObjectStore).prototype)||!(i||lt.includes(n)))return;let a=async function(e,...t){let a=this.transaction(e,i?`readwrite`:`readonly`),o=a.store;return r&&(o=o.index(t.shift())),(await Promise.all([o[n](...t),i&&a.done]))[0]};return dt.set(t,a),a}it(e=>({...e,get:(t,n,r)=>ft(t,n)||e.get(t,n,r),has:(t,n)=>!!ft(t,n)||e.has(t,n)}));var pt=class{constructor(e){this.container=e}getPlatformInfoString(){return this.container.getProviders().map(e=>{if(mt(e)){let t=e.getImmediate();return`${t.library}/${t.version}`}return null}).filter(e=>e).join(` `)}};function mt(e){return e.getComponent()?.type===`VERSION`}var ht=`@firebase/app`,gt=`0.16.0`,_t=new We(`@firebase/app`),vt=`@firebase/app-compat`,yt=`@firebase/analytics-compat`,bt=`@firebase/analytics`,xt=`@firebase/app-check-compat`,St=`@firebase/app-check`,Ct=`@firebase/auth`,wt=`@firebase/auth-compat`,Tt=`@firebase/database`,Et=`@firebase/data-connect`,Dt=`@firebase/database-compat`,Ot=`@firebase/functions`,kt=`@firebase/functions-compat`,At=`@firebase/installations`,jt=`@firebase/installations-compat`,Mt=`@firebase/messaging`,Nt=`@firebase/messaging-compat`,Pt=`@firebase/performance`,Ft=`@firebase/performance-compat`,It=`@firebase/remote-config`,Lt=`@firebase/remote-config-compat`,Rt=`@firebase/storage`,zt=`@firebase/storage-compat`,Bt=`@firebase/firestore`,Vt=`@firebase/ai`,Ht=`@firebase/firestore-compat`,Ut=`firebase`,Wt=`12.17.0`,Gt=`[DEFAULT]`,Kt={[ht]:`fire-core`,[vt]:`fire-core-compat`,[bt]:`fire-analytics`,[yt]:`fire-analytics-compat`,[St]:`fire-app-check`,[xt]:`fire-app-check-compat`,[Ct]:`fire-auth`,[wt]:`fire-auth-compat`,[Tt]:`fire-rtdb`,[Et]:`fire-data-connect`,[Dt]:`fire-rtdb-compat`,[Ot]:`fire-fn`,[kt]:`fire-fn-compat`,[At]:`fire-iid`,[jt]:`fire-iid-compat`,[Mt]:`fire-fcm`,[Nt]:`fire-fcm-compat`,[Pt]:`fire-perf`,[Ft]:`fire-perf-compat`,[It]:`fire-rc`,[Lt]:`fire-rc-compat`,[Rt]:`fire-gcs`,[zt]:`fire-gcs-compat`,[Bt]:`fire-fst`,[Ht]:`fire-fst-compat`,[Vt]:`fire-vertex`,"fire-js":`fire-js`,[Ut]:`fire-js-all`},qt=new Map,Jt=new Map,Yt=new Map;function Xt(e,t){try{e.container.addComponent(t)}catch(n){_t.debug(`Component ${t.name} failed to register with FirebaseApp ${e.name}`,n)}}function y(e){let t=e.name;if(Yt.has(t))return _t.debug(`There were multiple attempts to register component ${t}.`),!1;Yt.set(t,e);for(let t of qt.values())Xt(t,e);for(let t of Jt.values())Xt(t,e);return!0}function Zt(e,t){let n=e.container.getProvider(`heartbeat`).getImmediate({optional:!0});return n&&n.triggerHeartbeat(),e.container.getProvider(t)}function Qt(e){return e!=null&&e.settings!==void 0}var $t=new me(`app`,`Firebase`,{"no-app":`No Firebase App '{$appName}' has been created - call initializeApp() first`,"bad-app-name":`Illegal App name: '{$appName}'`,"duplicate-app":`Firebase App named '{$appName}' already exists with different {$mismatchedParam}. Existing: '{$oldValue}'. New: '{$newValue}'.`,"app-deleted":`Firebase App named '{$appName}' already deleted`,"server-app-deleted":`Firebase Server App has been deleted`,"no-options":`Need to provide options, when not being deployed to hosting via source.`,"invalid-app-argument":`firebase.{$appName}() takes either no argument or a Firebase App instance.`,"invalid-log-argument":"First argument to `onLog` must be null or a function.","idb-open":`Error thrown when opening IndexedDB. Original error: {$originalErrorMessage}.`,"idb-get":`Error thrown when reading from IndexedDB. Original error: {$originalErrorMessage}.`,"idb-set":`Error thrown when writing to IndexedDB. Original error: {$originalErrorMessage}.`,"idb-delete":`Error thrown when deleting from IndexedDB. Original error: {$originalErrorMessage}.`,"finalization-registry-not-supported":`FirebaseServerApp deleteOnDeref field defined but the JS runtime does not support FinalizationRegistry.`,"invalid-server-app-environment":`FirebaseServerApp is not for use in browser environments.`}),en=class{constructor(e,t,n){this._isDeleted=!1,this._options={...e},this._config={...t},this._name=t.name,this._automaticDataCollectionEnabled=t.automaticDataCollectionEnabled,this._container=n,this.container.addComponent(new Ne(`app`,()=>this,`PUBLIC`))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(e){this.checkDestroyed(),this._automaticDataCollectionEnabled=e}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(e){this._isDeleted=e}checkDestroyed(){if(this.isDeleted)throw $t.create(`app-deleted`,{appName:this._name})}},tn=Wt;function nn(e,t={}){let n=e;typeof t!=`object`&&(t={name:t});let r={name:Gt,automaticDataCollectionEnabled:!0,...t},i=r.name;if(typeof i!=`string`||!i)throw $t.create(`bad-app-name`,{appName:String(i)});if(n||=h(),!n)throw $t.create(`no-options`);let a=qt.get(i);if(a){if(!ge(n,a.options))throw $t.create(`duplicate-app`,{appName:i,mismatchedParam:`options`,oldValue:JSON.stringify(a.options),newValue:JSON.stringify(n)});if(ge(r,a.config))return a;throw $t.create(`duplicate-app`,{appName:i,mismatchedParam:`config`,oldValue:JSON.stringify(a.config),newValue:JSON.stringify(r)})}let o=new Re(i);for(let e of Yt.values())o.addComponent(e);let s=new en(n,r,o);return qt.set(i,s),s}function rn(e=Gt){let t=qt.get(e);if(!t&&e===`[DEFAULT]`&&h())return nn();if(!t)throw $t.create(`no-app`,{appName:e});return t}function an(e,t,n){let r=Kt[e]??e;n&&(r+=`-${n}`);let i=r.match(/\s|\//),a=t.match(/\s|\//);if(i||a){let e=[`Unable to register library "${r}" with version "${t}":`];i&&e.push(`library name "${r}" contains illegal characters (whitespace or "/")`),i&&a&&e.push(`and`),a&&e.push(`version name "${t}" contains illegal characters (whitespace or "/")`),_t.warn(e.join(` `));return}y(new Ne(`${r}-version`,()=>({library:r,version:t}),`VERSION`))}var on=`firebase-heartbeat-database`,sn=1,cn=`firebase-heartbeat-store`,ln=null;function un(){return ln||=ct(on,sn,{upgrade:(e,t)=>{if(t===0)try{e.createObjectStore(cn)}catch(e){console.warn(e)}}}).catch(e=>{throw $t.create(`idb-open`,{originalErrorMessage:e.message})}),ln}async function dn(e){try{let t=(await un()).transaction(cn),n=await t.objectStore(cn).get(pn(e));return await t.done,n}
1catch(e){if(e instanceof pe)_t.warn(e.message);else{let t=$t.create(`idb-get`,{originalErrorMessage:e?.message});_t.warn(t.message)}}}async function fn(e,t){try{let n=(await un()).transaction(cn,`readwrite`);await n.objectStore(cn).put(t,pn(e)),await n.done}catch(e){if(e instanceof pe)_t.warn(e.message);else{let t=$t.create(`idb-set`,{originalErrorMessage:e?.message});_t.warn(t.message)}}}function pn(e){return`${e.name}!${e.options.appId}`}var mn=1024,hn=30,gn=class{constructor(e){this.container=e,this._heartbeatsCache=null;let t=this.container.getProvider(`app`).getImmediate();this._storage=new yn(t),this._heartbeatsCachePromise=this._storage.read().then(e=>(this._heartbeatsCache=e,e))}async triggerHeartbeat(){try{let e=this.container.getProvider(`platform-logger`).getImmediate().getPlatformInfoString(),t=_n();if(this._heartbeatsCache?.heartbeats==null&&(this._heartbeatsCache=await this._heartbeatsCachePromise,this._heartbeatsCache?.heartbeats==null)||this._heartbeatsCache.lastSentHeartbeatDate===t||this._heartbeatsCache.heartbeats.some(e=>e.date===t))return;if(this._heartbeatsCache.heartbeats.push({date:t,agent:e}),this._heartbeatsCache.heartbeats.length>hn){let e=xn(this._heartbeatsCache.heartbeats);this._heartbeatsCache.heartbeats.splice(e,1)}return this._storage.overwrite(this._heartbeatsCache)}catch(e){_t.warn(e)}}async getHeartbeatsHeader(){try{if(this._heartbeatsCache===null&&await this._heartbeatsCachePromise,this._heartbeatsCache?.heartbeats==null||this._heartbeatsCache.heartbeats.length===0)return``;let e=_n(),{heartbeatsToSend:t,unsentEntries:n}=vn(this._heartbeatsCache.heartbeats),r=o(JSON.stringify({version:2,heartbeats:t}));return this._heartbeatsCache.lastSentHeartbeatDate=e,n.length>0?(this._heartbeatsCache.heartbeats=n,await this._storage.overwrite(this._heartbeatsCache)):(this._heartbeatsCache.heartbeats=[],this._storage.overwrite(this._heartbeatsCache)),r}catch(e){return _t.warn(e),``}}};function _n(){return new Date().toISOString().substring(0,10)}function vn(e,t=mn){let n=[],r=e.slice();for(let i of e){let e=n.find(e=>e.agent===i.agent);if(!e){if(n.push({agent:i.agent,dates:[i.date]}),bn(n)>t){n.pop();break}}else if(e.dates.push(i.date),bn(n)>t){e.dates.pop();break}r=r.slice(1)}return{heartbeatsToSend:n,unsentEntries:r}}var yn=class{constructor(e){this.app=e,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}async runIndexedDBEnvironmentCheck(){return ue()?de().then(()=>!0).catch(()=>!1):!1}async read(){if(await this._canUseIndexedDBPromise){let e=await dn(this.app);return e?.heartbeats?e:{heartbeats:[]}}return{heartbeats:[]}}async overwrite(e){if(await this._canUseIndexedDBPromise){let t=await this.read();return fn(this.app,{lastSentHeartbeatDate:e.lastSentHeartbeatDate??t.lastSentHeartbeatDate,heartbeats:e.heartbeats})}}async add(e){if(await this._canUseIndexedDBPromise){let t=await this.read();return fn(this.app,{lastSentHeartbeatDate:e.lastSentHeartbeatDate??t.lastSentHeartbeatDate,heartbeats:[...t.heartbeats,...e.heartbeats]})}}};function bn(e){return o(JSON.stringify({version:2,heartbeats:e})).length}function xn(e){if(e.length===0)return-1;let t=0,n=e[0].date;for(let r=1;r<e.length;r++)e[r].date<n&&(n=e[r].date,t=r);return t}function Sn(e){y(new Ne(`platform-logger`,e=>new pt(e),`PRIVATE`)),y(new Ne(`heartbeat`,e=>new gn(e),`PRIVATE`)),an(ht,gt,e),an(ht,gt,`esm2020`),an(`fire-js`,``)}Sn(``);var Cn=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{},wn={},Tn,En;(function(){var e;function t(e,t){function n(){}n.prototype=t.prototype,e.F=t.prototype,e.prototype=new n,e.prototype.constructor=e,e.D=function(e,n,r){for(var i=Array(arguments.length-2),a=2;a<arguments.length;a++)i[a-2]=arguments[a];return t.prototype[n].apply(e,i)}}function n(){this.blockSize=-1}function r(){this.blockSize=-1,this.blockSize=64,this.g=[,,,,],this.C=Array(this.blockSize),this.o=this.h=0,this.u()}t(r,n),r.prototype.u=function(){this.g[0]=1732584193,this.g[1]=4023233417,this.g[2]=2562383102,this.g[3]=271733878,this.o=this.h=0};function i(e,t,n){n||=0;let r=Array(16);if(typeof t==`string`)for(var i=0;i<16;++i)r[i]=t.charCodeAt(n++)|t.charCodeAt(n++)<<8|t.charCodeAt(n++)<<16|t.charCodeAt(n++)<<24;else for(i=0;i<16;++i)r[i]=t[n++]|t[n++]<<8|t[n++]<<16|t[n++]<<24;t=e.g[0],n=e.g[1],i=e.g[2];let a=e.g[3],o;o=t+(a^n&(i^a))+r[0]+3614090360&4294967295,t=n+(o<<7&4294967295|o>>>25),o=a+(i^t&(n^i))+r[1]+3905402710&4294967295,a=t+(o<<12&4294967295|o>>>20),o=i+(n^a&(t^n))+r[2]+606105819&4294967295,i=a+(o<<17&4294967295|o>>>15),o=n+(t^i&(a^t))+r[3]+3250441966&4294967295,n=i+(o<<22&4294967295|o>>>10),o=t+(a^n&(i^a))+r[4]+4118548399&4294967295,t=n+(o<<7&4294967295|o>>>25),o=a+(i^t&(n^i))+r[5]+1200080426&4294967295,a=t+(o<<12&4294967295|o>>>20),o=i+(n^a&(t^n))+r[6]+2821735955&4294967295,i=a+(o<<17&4294967295|o>>>15),o=n+(t^i&(a^t))+r[7]+4249261313&4294967295,n=i+(o<<22&4294967295|o>>>10),o=t+(a^n&(i^a))+r[8]+1770035416&4294967295,t=n+(o<<7&4294967295|o>>>25),o=a+(i^t&(n^i))+r[9]+2336552879&4294967295,a=t+(o<<12&4294967295|o>>>20),o=i+(n^a&(t^n))+r[10]+4294925233&4294967295,i=a+(o<<17&4294967295|o>>>15),o=n+(t^i&(a^t))+r[11]+2304563134&4294967295,n=i+(o<<22&4294967295|o>>>10),o=t+(a^n&(i^a))+r[12]+1804603682&4294967295,t=n+(o<<7&4294967295|o>>>25),o=a+(i^t&(n^i))+r[13]+4254626195&4294967295,a=t+(o<<12&4294967295|o>>>20),o=i+(n^a&(t^n))+r[14]+2792965006&4294967295,i=a+(o<<17&4294967295|o>>>15),o=n+(t^i&(a^t))+r[15]+1236535329&4294967295,n=i+(o<<22&4294967295|o>>>10),o=t+(i^a&(n^i))+r[1]+4129170786&4294967295,t=n+(o<<5&4294967295|o>>>27),o=a+(n^i&(t^n))+r[6]+3225465664&4294967295,a=t+(o<<9&4294967295|o>>>23),o=i+(t^n&(a^t))+r[11]+643717713&4294967295,i=a+(o<<14&4294967295|o>>>18),o=n+(a^t&(i^a))+r[0]+3921069994&4294967295,n=i+(o<<20&4294967295|o>>>12),o=t+(i^a&(n^i))+r[5]+3593408605&4294967295,t=n+(o<<5&4294967295|o>>>27),o=a+(n^i&(t^n))+r[10]+38016083&4294967295,a=t+(o<<9&4294967295|o>>>23),o=i+(t^n&(a^t))+r[15]+3634488961&4294967295,i=a+(o<<14&4294967295|o>>>18),o=n+(a^t&(i^a))+r[4]+3889429448&4294967295,n=i+(o<<20&4294967295|o>>>12),o=t+(i^a&(n^i))+r[9]+568446438&4294967295,t=n+(o<<5&4294967295|o>>>27),o=a+(n^i&(t^n))+r[14]+3275163606&4294967295,a=t+(o<<9&4294967295|o>>>23),o=i+(t^n&(a^t))+r[3]+4107603335&4294967295,i=a+(o<<14&4294967295|o>>>18),o=n+(a^t&(i^a))+r[8]+1163531501&4294967295,n=i+(o<<20&4294967295|o>>>12),o=t+(i^a&(n^i))+r[13]+2850285829&4294967295,t=n+(o<<5&4294967295|o>>>27),o=a+(n^i&(t^n))+r[2]+4243563512&4294967295,a=t+(o<<9&4294967295|o>>>23),o=i+(t^n&(a^t))+r[7]+1735328473&4294967295,i=a+(o<<14&4294967295|o>>>18),o=n+(a^t&(i^a))+r[12]+2368359562&4294967295,n=i+(o<<20&4294967295|o>>>12),o=t+(n^i^a)+r[5]+4294588738&4294967295,t=n+(o<<4&4294967295|o>>>28),o=a+(t^n^i)+r[8]+2272392833&4294967295,a=t+(o<<11&4294967295|o>>>21),o=i+(a^t^n)+r[11]+1839030562&4294967295,i=a+(o<<16&4294967295|o>>>16),o=n+(i^a^t)+r[14]+4259657740&4294967295,n=i+(o<<23&4294967295|o>>>9),o=t+(n^i^a)+r[1]+2763975236&4294967295,t=n+(o<<4&4294967295|o>>>28),o=a+(t^n^i)+r[4]+1272893353&4294967295,a=t+(o<<11&4294967295|o>>>21),o=i+(a^t^n)+r[7]+4139469664&4294967295,i=a+(o<<16&4294967295|o>>>16),o=n+(i^a^t)+r[10]+3200236656&4294967295,n=i+(o<<23&4294967295|o>>>9),o=t+(n^i^a)+r[13]+681279174&4294967295,t=n+(o<<4&4294967295|o>>>28),o=a+(t^n^i)+r[0]+3936430074&4294967295,a=t+(o<<11&4294967295|o>>>21),o=i+(a^t^n)+r[3]+3572445317&4294967295,i=a+(o<<16&4294967295|o>>>16),o=n+(i^a^t)+r[6]+76029189&4294967295,n=i+(o<<23&4294967295|o>>>9),o=t+(n^i^a)+r[9]+3654602809&4294967295,t=n+(o<<4&4294967295|o>>>28),o=a+(t^n^i)+r[12]+3873151461&4294967295,a=t+(o<<11&4294967295|o>>>21),o=i+(a^t^n)+r[15]+530742520&4294967295,i=a+(o<<16&4294967295|o>>>16),o=n+(i^a^t)+r[2]+3299628645&4294967295,n=i+(o<<23&4294967295|o>>>9),o=t+(i^(n|~a))+r[0]+4096336452&4294967295,t=n+(o<<6&4294967295|o>>>26),o=a+(n^(t|~i))+r[7]+1126891415&4294967295,a=t+(o<<10&4294967295|o>>>22),o=i+(t^(a|~n))+r[14]+2878612391&4294967295,i=a+(o<<15&4294967295|o>>>17),o=n+(a^(i|~t))+r[5]+4237533241&4294967295,n=i+(o<<21&4294967295|o>>>11),o=t+(i^(n|~a))+r[12]+1700485571&4294967295,t=n+(o<<6&4294967295|o>>>26),o=a+(n^(t|~i))+r[3]+2399980690&4294967295,a=t+(o<<10&4294967295|o>>>22),o=i+(t^(a|~n))+r[10]+4293915773&4294967295,i=a+(o<<15&4294967295|o>>>17),o=n+(a^(i|~t))+r[1]+2240044497&4294967295,n=i+(o<<21&4294967295|o>>>11),o=t+(i^(n|~a))+r[8]+1873313359&4294967295,t=n+(o<<6&4294967295|o>>>26),o=a+(n^(t|~i))+r[15]+4264355552&4294967295,a=t+(o<<10&4294967295|o>>>22),o=i+(t^(a|~n))+r[6]+2734768916&4294967295,i=a+(o<<15&4294967295|o>>>17),o=n+(a^(i|~t))+r[13]+1309151649&4294967295,n=i+(o<<21&4294967295|o>>>11),o=t+(i^(n|~a))+r[4]+4149444226&4294967295,t=n+(o<<6&4294967295|o>>>
126),o=a+(n^(t|~i))+r[11]+3174756917&4294967295,a=t+(o<<10&4294967295|o>>>22),o=i+(t^(a|~n))+r[2]+718787259&4294967295,i=a+(o<<15&4294967295|o>>>17),o=n+(a^(i|~t))+r[9]+3951481745&4294967295,e.g[0]=e.g[0]+t&4294967295,e.g[1]=e.g[1]+(i+(o<<21&4294967295|o>>>11))&4294967295,e.g[2]=e.g[2]+i&4294967295,e.g[3]=e.g[3]+a&4294967295}r.prototype.v=function(e,t){t===void 0&&(t=e.length);let n=t-this.blockSize,r=this.C,a=this.h,o=0;for(;o<t;){if(a==0)for(;o<=n;)i(this,e,o),o+=this.blockSize;if(typeof e==`string`){for(;o<t;)if(r[a++]=e.charCodeAt(o++),a==this.blockSize){i(this,r),a=0;break}}else for(;o<t;)if(r[a++]=e[o++],a==this.blockSize){i(this,r),a=0;break}}this.h=a,this.o+=t},r.prototype.A=function(){var e=Array((this.h<56?this.blockSize:this.blockSize*2)-this.h);e[0]=128;for(var t=1;t<e.length-8;++t)e[t]=0;t=this.o*8;for(var n=e.length-8;n<e.length;++n)e[n]=t&255,t/=256;for(this.v(e),e=Array(16),t=0,n=0;n<4;++n)for(let r=0;r<32;r+=8)e[t++]=this.g[n]>>>r&255;return e};function a(e,t){var n=s;return Object.prototype.hasOwnProperty.call(n,e)?n[e]:n[e]=t(e)}function o(e,t){this.h=t;let n=[],r=!0;for(let i=e.length-1;i>=0;i--){let a=e[i]|0;r&&a==t||(n[i]=a,r=!1)}this.g=n}var s={};function c(e){return-128<=e&&e<128?a(e,function(e){return new o([e|0],e<0?-1:0)}):new o([e|0],e<0?-1:0)}function l(e){if(isNaN(e)||!isFinite(e))return d;if(e<0)return g(l(-e));let t=[],n=1;for(let r=0;e>=n;r++)t[r]=e/n|0,n*=4294967296;return new o(t,0)}function u(e,t){if(e.length==0)throw Error(`number format error: empty string`);if(t||=10,t<2||36<t)throw Error(`radix out of range: `+t);if(e.charAt(0)==`-`)return g(u(e.substring(1),t));if(e.indexOf(`-`)>=0)throw Error(`number format error: interior "-" character`);let n=l(t**8),r=d;for(let a=0;a<e.length;a+=8){var i=Math.min(8,e.length-a);let o=parseInt(e.substring(a,a+i),t);i<8?(i=l(t**+i),r=r.j(i).add(l(o))):(r=r.j(n),r=r.add(l(o)))}return r}var d=c(0),f=c(1),p=c(16777216);e=o.prototype,e.m=function(){if(h(this))return-g(this).m();let e=0,t=1;for(let n=0;n<this.g.length;n++){let r=this.i(n);e+=(r>=0?r:4294967296+r)*t,t*=4294967296}return e},e.toString=function(e){if(e||=10,e<2||36<e)throw Error(`radix out of range: `+e);if(m(this))return`0`;if(h(this))return`-`+g(this).toString(e);let t=l(e**6);var n=this;let r=``;for(;;){let i=re(n,t).g;n=ee(n,i.j(t));let a=((n.g.length>0?n.g[0]:n.h)>>>0).toString(e);if(n=i,m(n))return a+r;for(;a.length<6;)a=`0`+a;r=a+r}},e.i=function(e){return e<0?0:e<this.g.length?this.g[e]:this.h};function m(e){if(e.h!=0)return!1;for(let t=0;t<e.g.length;t++)if(e.g[t]!=0)return!1;return!0}function h(e){return e.h==-1}e.l=function(e){return e=ee(this,e),h(e)?-1:+!m(e)};function g(e){let t=e.g.length,n=[];for(let r=0;r<t;r++)n[r]=~e.g[r];return new o(n,~e.h).add(f)}e.abs=function(){return h(this)?g(this):this},e.add=function(e){let t=Math.max(this.g.length,e.g.length),n=[],r=0;for(let i=0;i<=t;i++){let t=r+(this.i(i)&65535)+(e.i(i)&65535),a=(t>>>16)+(this.i(i)>>>16)+(e.i(i)>>>16);r=a>>>16,t&=65535,a&=65535,n[i]=a<<16|t}return new o(n,n[n.length-1]&-2147483648?-1:0)};function ee(e,t){return e.add(g(t))}e.j=function(e){if(m(this)||m(e))return d;if(h(this))return h(e)?g(this).j(g(e)):g(g(this).j(e));if(h(e))return g(this.j(g(e)));if(this.l(p)<0&&e.l(p)<0)return l(this.m()*e.m());let t=this.g.length+e.g.length,n=[];for(var r=0;r<2*t;r++)n[r]=0;for(r=0;r<this.g.length;r++)for(let t=0;t<e.g.length;t++){let i=this.i(r)>>>16,a=this.i(r)&65535,o=e.i(t)>>>16,s=e.i(t)&65535;n[2*r+2*t]+=a*s,te(n,2*r+2*t),n[2*r+2*t+1]+=i*s,te(n,2*r+2*t+1),n[2*r+2*t+1]+=a*o,te(n,2*r+2*t+1),n[2*r+2*t+2]+=i*o,te(n,2*r+2*t+2)}for(e=0;e<t;e++)n[e]=n[2*e+1]<<16|n[2*e];for(e=t;e<2*t;e++)n[e]=0;return new o(n,0)};function te(e,t){for(;(e[t]&65535)!=e[t];)e[t+1]+=e[t]>>>16,e[t]&=65535,t++}function ne(e,t){this.g=e,this.h=t}function re(e,t){if(m(t))throw Error(`division by zero`);if(m(e))return new ne(d,d);if(h(e))return t=re(g(e),t),new ne(g(t.g),g(t.h));if(h(t))return t=re(e,g(t)),new ne(g(t.g),t.h);if(e.g.length>30){if(h(e)||h(t))throw Error(`slowDivide_ only works with positive integers.`);for(var n=f,r=t;r.l(e)<=0;)n=ie(n),r=ie(r);var i=ae(n,1),a=ae(r,1);for(r=ae(r,2),n=ae(n,2);!m(r);){var o=a.add(r);o.l(e)<=0&&(i=i.add(n),a=o),r=ae(r,1),n=ae(n,1)}return t=ee(e,i.j(t)),new ne(i,t)}for(i=d;
1e.l(t)>=0;){for(n=Math.max(1,Math.floor(e.m()/t.m())),r=Math.ceil(Math.log(n)/Math.LN2),r=r<=48?1:2**(r-48),a=l(n),o=a.j(t);h(o)||o.l(e)>0;)n-=r,a=l(n),o=a.j(t);m(a)&&(a=f),i=i.add(a),e=ee(e,o)}return new ne(i,e)}e.B=function(e){return re(this,e).h},e.and=function(e){let t=Math.max(this.g.length,e.g.length),n=[];for(let r=0;r<t;r++)n[r]=this.i(r)&e.i(r);return new o(n,this.h&e.h)},e.or=function(e){let t=Math.max(this.g.length,e.g.length),n=[];for(let r=0;r<t;r++)n[r]=this.i(r)|e.i(r);return new o(n,this.h|e.h)},e.xor=function(e){let t=Math.max(this.g.length,e.g.length),n=[];for(let r=0;r<t;r++)n[r]=this.i(r)^e.i(r);return new o(n,this.h^e.h)};function ie(e){let t=e.g.length+1,n=[];for(let r=0;r<t;r++)n[r]=e.i(r)<<1|e.i(r-1)>>>31;return new o(n,e.h)}function ae(e,t){let n=t>>5;t%=32;let r=e.g.length-n,i=[];for(let a=0;a<r;a++)i[a]=t>0?e.i(a+n)>>>t|e.i(a+n+1)<<32-t:e.i(a+n);return new o(i,e.h)}r.prototype.digest=r.prototype.A,r.prototype.reset=r.prototype.u,r.prototype.update=r.prototype.v,En=wn.Md5=r,o.prototype.add=o.prototype.add,o.prototype.multiply=o.prototype.j,o.prototype.modulo=o.prototype.B,o.prototype.compare=o.prototype.l,o.prototype.toNumber=o.prototype.m,o.prototype.toString=o.prototype.toString,o.prototype.getBits=o.prototype.i,o.fromNumber=l,o.fromString=u,Tn=wn.Integer=o}).apply(Cn===void 0?typeof self<`u`?self:typeof window<`u`?window:{}:Cn);var Dn=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{},On={},kn,An,jn,Mn,Nn,Pn,Fn,In;(function(){var e,t=Object.defineProperty;function n(e){e=[typeof globalThis==`object`&&globalThis,e,typeof window==`object`&&window,typeof self==`object`&&self,typeof Dn==`object`&&Dn];for(var t=0;t<e.length;++t){var n=e[t];if(n&&n.Math==Math)return n}throw Error(`Cannot find global object`)}var r=n(this);function i(e,n){if(n)a:{var i=r;e=e.split(`.`);for(var a=0;a<e.length-1;a++){var o=e[a];if(!(o in i))break a;i=i[o]}e=e[e.length-1],a=i[e],n=n(a),n!=a&&n!=null&&t(i,e,{configurable:!0,writable:!0,value:n})}}i(`Symbol.dispose`,function(e){return e||Symbol(`Symbol.dispose`)}),i(`Array.prototype.values`,function(e){return e||function(){return this[Symbol.iterator]()}}),i(`Object.entries`,function(e){return e||function(e){var t=[],n;for(n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push([n,e[n]]);return t}});var a=a||{},o=this||self;function s(e){var t=typeof e;return t==`object`&&e!=null||t==`function`}function c(e,t,n){return e.call.apply(e.bind,arguments)}function l(e,t,n){return l=c,l.apply(null,arguments)}function u(e,t){var n=Array.prototype.slice.call(arguments,1);return function(){var t=n.slice();return t.push.apply(t,arguments),e.apply(this,t)}}function d(e,t){function n(){}n.prototype=t.prototype,e.Z=t.prototype,e.prototype=new n,e.prototype.constructor=e,e.Ob=function(e,n,r){for(var i=Array(arguments.length-2),a=2;a<arguments.length;a++)i[a-2]=arguments[a];return t.prototype[n].apply(e,i)}}var f=typeof AsyncContext<`u`&&typeof AsyncContext.Snapshot==`function`?e=>e&&AsyncContext.Snapshot.wrap(e):e=>e;function p(e){let t=e.length;if(t>0){let n=Array(t);for(let r=0;r<t;r++)n[r]=e[r];return n}return[]}function m(e,t){for(let t=1;t<arguments.length;t++){let r=arguments[t];var n=typeof r;if(n=n==`object`?r?Array.isArray(r)?`array`:n:`null`:n,n==`array`||n==`object`&&typeof r.length==`number`){n=e.length||0;let t=r.length||0;e.length=n+t;for(let i=0;i<t;i++)e[n+i]=r[i]}else e.push(r)}}class h{constructor(e,t){this.i=e,this.j=t,this.h=0,this.g=null}get(){let e;return this.h>0?(this.h--,e=this.g,this.g=e.next,e.next=null):e=this.i(),e}}function g(e){o.setTimeout(()=>{throw e},0)}function ee(){var e=oe;let t=null;return e.g&&(t=e.g,e.g=e.g.next,e.g||(e.h=null),t.next=null),t}class te{constructor(){this.h=this.g=null}add(e,t){let n=ne.get();n.set(e,t),this.h?this.h.next=n:this.g=n,this.h=n}}var ne=new h(()=>new re,e=>e.reset());class re{constructor(){this.next=this.g=this.h=null}set(e,t){this.h=e,this.g=t,this.next=null}reset(){this.next=this.g=this.h=null}}let ie,ae=!1,oe=new te,se=()=>{let e=Promise.resolve(void 0);ie=()=>{e.then(ce)}};function ce(){for(var e;e=ee();){try{e.h.call(e.g)}catch(e){g(e)}var t=ne;t.j(e),t.h<100&&(t.h++,e.next=t.g,t.g=e)}ae=!1}function le(){this.u=this.u,this.C=this.C}le.prototype.u=!1,le.prototype.dispose=function(){this.u||(this.u=!0,this.N())},le.prototype[Symbol.dispose]=function(){this.dispose()},le.prototype.N=function(){if(this.C)for(;this.C.length;)this.C.shift()()};function ue(e,t){this.type=e,this.g=this.target=t,this.defaultPrevented=!1}ue.prototype.h=function(){this.defaultPrevented=!0};var de=function(){if(!o.addEventListener||!Object.defineProperty)return!1;var e=!1,t=Object.defineProperty({},"passive",{get:function(){e=!0}});try{let e=()=>{};o.addEventListener(`test`,e,t),o.removeEventListener(`test`,e,t)}catch{}return e}();function fe(e){return/^[\s\xa0]*$/.test(e)}function pe(e,t){ue.call(this,e?e.type:``),this.relatedTarget=this.g=this.target=null,this.button=this.screenY=this.screenX=this.clientY=this.clientX=0,this.key=``,this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1,this.state=null,this.pointerId=0,this.pointerType=``,this.i=null,e&&this.init(e,t)}d(pe,ue),pe.prototype.init=function(e,t){let n=this.type=e.type,r=e.changedTouches&&e.changedTouches.length?e.changedTouches[0]:null;this.target=e.target||e.srcElement,this.g=t,t=e.relatedTarget,t||(n==`mouseover`?t=e.fromElement:n==`mouseout`&&(t=e.toElement)),this.relatedTarget=t,r?(this.clientX=r.clientX===void 0?r.pageX:r.clientX,this.clientY=r.clientY===void 0?r.pageY:r.clientY,this.screenX=r.screenX||0,this.screenY=r.screenY||0):(this.clientX=e.clientX===void 0?e.pageX:e.clientX,this.clientY=e.clientY===void 0?e.pageY:e.clientY,this.screenX=e.screenX||0,this.screenY=e.screenY||0),this.button=e.button,this.key=e.key||``,this.ctrlKey=e.ctrlKey,this.altKey=e.altKey,this.shiftKey=e.shiftKey,this.metaKey=e.metaKey,this.pointerId=e.pointerId||0,this.pointerType=e.pointerType,this.state=e.state,this.i=e,e.defaultPrevented&&pe.Z.h.call(this)},pe.prototype.h=function(){pe.Z.h.call(this);let e=this.i;e.preventDefault?e.preventDefault():e.returnValue=!1};var me=`closure_listenable_`+(Math.random()*1e6|0),he=0;function ge(e,t,n,r,i){this.listener=e,this.proxy=null,this.src=t,this.type=n,this.capture=!!r,this.ha=i,this.key=++he,this.da=this.fa=!1}function _e(e){e.da=!0,e.listener=null,e.proxy=null,e.src=null,e.ha=null}function ve(e,t,n){for(let r in e)t.call(n,e[r],r,e)}function ye(e,t){for(let n in e)t.call(void 0,e[n],n,e)}function be(e){let t={};for(let n in e)t[n]=e[n];return t}let xe=`constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleStr
1ing toString valueOf`.split(` `);function Se(e,t){let n,r;for(let t=1;t<arguments.length;t++){for(n in r=arguments[t],r)e[n]=r[n];for(let t=0;t<xe.length;t++)n=xe[t],Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}}function Ce(e){this.src=e,this.g={},this.h=0}Ce.prototype.add=function(e,t,n,r,i){let a=e.toString();e=this.g[a],e||(e=this.g[a]=[],this.h++);let o=Te(e,t,r,i);return o>-1?(t=e[o],n||(t.fa=!1)):(t=new ge(t,this.src,a,!!r,i),t.fa=n,e.push(t)),t};function we(e,t){let n=t.type;if(n in e.g){var r=e.g[n],i=Array.prototype.indexOf.call(r,t,void 0),a;(a=i>=0)&&Array.prototype.splice.call(r,i,1),a&&(_e(t),e.g[n].length==0&&(delete e.g[n],e.h--))}}function Te(e,t,n,r){for(let i=0;i<e.length;++i){let a=e[i];if(!a.da&&a.listener==t&&a.capture==!!n&&a.ha==r)return i}return-1}var Ee=`closure_lm_`+(Math.random()*1e6|0),De={};function Oe(e,t,n,r,i){if(r&&r.once)return je(e,t,n,r,i);if(Array.isArray(t)){for(let a=0;a<t.length;a++)Oe(e,t[a],n,r,i);return null}return n=Re(n),e&&e[me]?e.J(t,n,s(r)?!!r.capture:!!r,i):ke(e,t,n,!1,r,i)}function ke(e,t,n,r,i,a){if(!t)throw Error(`Invalid event type`);let o=s(i)?!!i.capture:!!i,c=Ie(e);if(c||(e[Ee]=c=new Ce(e)),n=c.add(t,n,r,o,a),n.proxy)return n;if(r=Ae(),n.proxy=r,r.src=e,r.listener=n,e.addEventListener)de||(i=o),i===void 0&&(i=!1),e.addEventListener(t.toString(),r,i);else if(e.attachEvent)e.attachEvent(Pe(t.toString()),r);else if(e.addListener&&e.removeListener)e.addListener(r);else throw Error(`addEventListener and attachEvent are unavailable.`);return n}function Ae(){function e(n){return t.call(e.src,e.listener,n)}let t=Fe;return e}function je(e,t,n,r,i){if(Array.isArray(t)){for(let a=0;a<t.length;a++)je(e,t[a],n,r,i);return null}return n=Re(n),e&&e[me]?e.K(t,n,s(r)?!!r.capture:!!r,i):ke(e,t,n,!0,r,i)}function Me(e,t,n,r,i){if(Array.isArray(t))for(var a=0;a<t.length;a++)Me(e,t[a],n,r,i);else r=s(r)?!!r.capture:!!r,n=Re(n),e&&e[me]?(e=e.i,a=String(t).toString(),a in e.g&&(t=e.g[a],n=Te(t,n,r,i),n>-1&&(_e(t[n]),Array.prototype.splice.call(t,n,1),t.length==0&&(delete e.g[a],e.h--)))):(e&&=Ie(e))&&(t=e.g[t.toString()],e=-1,t&&(e=Te(t,n,r,i)),(n=e>-1?t[e]:null)&&Ne(n))}function Ne(e){if(typeof e!=`number`&&e&&!e.da){var t=e.src;if(t&&t[me])we(t.i,e);else{var n=e.type,r=e.proxy;t.removeEventListener?t.removeEventListener(n,r,e.capture):t.detachEvent?t.detachEvent(Pe(n),r):t.addListener&&t.removeListener&&t.removeListener(r),(n=Ie(t))?(we(n,e),n.h==0&&(n.src=null,t[Ee]=null)):_e(e)}}}function Pe(e){return e in De?De[e]:De[e]=`on`+e}function Fe(e,t){if(e.da)e=!0;else{t=new pe(t,this);let n=e.listener,r=e.ha||e.src;e.fa&&Ne(e),e=n.call(r,t)}return e}function Ie(e){return e=e[Ee],e instanceof Ce?e:null}var Le=`__closure_events_fn_`+(Math.random()*1e9>>>0);function Re(e){return typeof e==`function`?e:(e[Le]||(e[Le]=function(t){return e.handleEvent(t)}),e[Le])}function ze(){le.call(this),this.i=new Ce(this),this.M=this,this.G=null}d(ze,le),ze.prototype[me]=!0,ze.prototype.removeEventListener=function(e,t,n,r){Me(this,e,t,n,r)};function _(e,t){var n,r=e.G;if(r)for(n=[];r;r=r.G)n.push(r);if(e=e.M,r=t.type||t,typeof t==`string`)t=new ue(t,e);else if(t instanceof ue)t.target=t.target||e;else{var i=t;t=new ue(r,e),Se(t,i)}i=!0;let a,o;if(n)for(o=n.length-1;o>=0;o--)a=t.g=n[o],i=Be(a,r,!0,t)&&i;if(a=t.g=e,i=Be(a,r,!0,t)&&i,i=Be(a,r,!1,t)&&i,n)for(o=0;o<n.length;o++)a=t.g=n[o],i=Be(a,r,!1,t)&&i}ze.prototype.N=function(){if(ze.Z.N.call(this),this.i){var e=this.i;for(let t in e.g){let n=e.g[t];for(let e=0;e<n.length;e++)_e(n[e]);delete e.g[t],e.h--}}this.G=null},ze.prototype.J=function(e,t,n,r){return this.i.add(String(e),t,!1,n,r)},ze.prototype.K=function(e,t,n,r){return this.i.add(String(e),t,!0,n,r)};function Be(e,t,n,r){if(t=e.i.g[String(t)],!t)return!0;t=t.concat();let i=!0;for(let a=0;a<t.length;++a){let o=t[a];if(o&&!o.da&&o.capture==n){let t=o.listener,n=o.ha||o.src;o.fa&&we(e.i,o),i=t.call(n,r)!==!1&&i}}return i&&!r.defaultPrevented}function Ve(e,t){if(typeof e!=`function`)if(e&&typeof e.handleEvent==`function`)e=l(e.handleEvent,e);else throw Error(`Invalid listener argument`);return Number(t)>2147483647?-1:o.setTimeout(e,t||0)}function He(e){e.g=Ve(()=>{e.g=null,e.i&&(e.i=!1,He(e))},e.l);let t=e.h;e.h=null,e.m.apply(null,t)}class Ue extends le{constructor(e,t){super(),this.m=e,this.l=t,this.h=null,this.i=!1,this.g=null}j(e){this.h=arguments,this.g?this.i=!0:He(this)}N(){super.N(),this.g&&(o.clearTimeout(this.g),this.g=null,this.i=!1,this.h=null)}}function We(e){le.call(this),this.h=e,this.g={}}d(We,le);var Ge=[];function Ke(e){ve(e.g,function(e,t){this.g.hasOwnProperty(t)&&Ne(e)},e),e.g={}}We.prototype.N=function(){We.Z.N.call(this),Ke(this)},We.prototype.handleEvent=function(){throw Error(`EventHandler.handleEvent not implemented`)};var qe=o.JSON.stringify,Je=o.JSON.parse,Ye=class{stringify(e){return o.JSON.stringify(e,void 0)}parse(e){return o.JSON.parse(e,void 0)}};function Xe(){}function Ze(){}var Qe={OPEN:`a`,hb:`b`,ERROR:`c`,tb:`d`};function $e(){ue.call(this,`d`)}d($e,ue);function et(){ue.call(this,`c`)}d(et,ue);var tt={},nt=null;function rt(){return nt||=new ze}tt.Ia=`serverreachability`;function it(e){ue.call(this,tt.Ia,e)}d(it,ue);function at(e){let t=rt();_(t,new it(t))}tt.STAT_EVENT=`statevent`;function ot(e,t){ue.call(this,tt.STAT_EVENT,e),this.stat=t}d(ot,ue);function v(e){let t=rt();_(t,new ot(t,e))}tt.Ja=`timingevent`;function st(e,t){ue.call(this,tt.Ja,e),this.size=t}d(st,ue);function ct(e,t){if(typeof e!=`function`)throw Error(`Fn must not be null and must be a function`);return o.setTimeout(function(){e()},t)}function lt(){this.g=!0}lt.prototype.ua=function(){this.g=!1};function ut(e,t,n,r,i,a){e.info(function(){if(e.g)if(a){var o=``,s=a.split(`&`);for(let e=0;e<s.length;e++){var c=s[e].split(`=`);
1if(c.length>1){let e=c[0];c=c[1];let t=e.split(`_`);o=t.length>=2&&t[1]==`type`?o+(e+`=`+c+`&`):o+(e+`=redacted&`)}}}else o=null;else o=a;return`XMLHTTP REQ (`+r+`) [attempt `+i+`]: `+t+`
2`+n+`
3`+o})}function dt(e,t,n,r,i,a,o){e.info(function(){return`XMLHTTP RESP (`+r+`) [ attempt `+i+`]: `+t+`
4`+n+`
5`+a+` `+o})}function ft(e,t,n,r){e.info(function(){return`XMLHTTP TEXT (`+t+`): `+mt(e,n)+(r?` `+r:``)})}function pt(e,t){e.info(function(){return`TIMEOUT: `+t})}lt.prototype.info=function(){};function mt(e,t){if(!e.g)return t;if(!t)return null;try{let a=JSON.parse(t);if(a){for(e=0;e<a.length;e++)if(Array.isArray(a[e])){var n=a[e];if(!(n.length<2)){var r=n[1];if(Array.isArray(r)&&!(r.length<1)){var i=r[0];if(i!=`noop`&&i!=`stop`&&i!=`close`)for(let e=1;e<r.length;e++)r[e]=``}}}}return qe(a)}catch{return t}}var ht={NO_ERROR:0,cb:1,qb:2,pb:3,kb:4,ob:5,rb:6,Ga:7,TIMEOUT:8,ub:9},gt={ib:`complete`,Fb:`success`,ERROR:`error`,Ga:`abort`,xb:`ready`,yb:`readystatechange`,TIMEOUT:`timeout`,sb:`incrementaldata`,wb:`progress`,lb:`downloadprogress`,Nb:`uploadprogress`},_t;function vt(){}d(vt,Xe),vt.prototype.g=function(){return new XMLHttpRequest},_t=new vt;function yt(e){return encodeURIComponent(String(e))}function bt(e){var t=1;e=e.split(`:`);let n=[];for(;t>0&&e.length;)n.push(e.shift()),t--;return e.length&&n.push(e.join(`:`)),n}function xt(e,t,n,r){this.j=e,this.i=t,this.l=n,this.S=r||1,this.V=new We(this),this.H=45e3,this.J=null,this.o=!1,this.u=this.B=this.A=this.M=this.F=this.T=this.D=null,this.G=[],this.g=null,this.C=0,this.m=this.v=null,this.X=-1,this.K=!1,this.P=0,this.O=null,this.W=this.L=this.U=this.R=!1,this.h=new St}function St(){this.i=null,this.g=``,this.h=!1}var Ct={},wt={};function Tt(e,t,n){e.M=1,e.A=Zt(qt(t)),e.u=n,e.R=!0,Et(e,null)}function Et(e,t){e.F=Date.now(),At(e),e.B=qt(e.A);var n=e.B,r=e.S;Array.isArray(r)||(r=[String(r)]),fn(n.i,`t`,r),e.C=0,n=e.j.L,e.h=new St,e.g=D(e.j,n?t:null,!e.u),e.P>0&&(e.O=new Ue(l(e.Y,e,e.g),e.P)),t=e.V,n=e.g,r=e.ba;var i=`readystatechange`;Array.isArray(i)||(i&&(Ge[0]=i.toString()),i=Ge);for(let e=0;e<i.length;e++){let a=Oe(n,i[e],r||t.handleEvent,!1,t.h||t);if(!a)break;t.g[a.key]=a}t=e.J?be(e.J):{},e.u?(e.v||=`POST`,t[`Content-Type`]=`application/x-www-form-urlencoded`,e.g.ea(e.B,e.v,e.u,t)):(e.v=`GET`,e.g.ea(e.B,e.v,null,t)),at(),ut(e.i,e.v,e.B,e.l,e.S,e.u)}xt.prototype.ba=function(e){e=e.target;let t=this.O;t&&S(e)==3?t.j():this.Y(e)},xt.prototype.Y=function(e){try{if(e==this.g)a:{let s=S(this.g),c=this.g.ya(),l=this.g.ca();if(!(s<3)&&(s!=3||this.g&&(this.h.h||this.g.la()||Hn(this.g)))){this.K||s!=4||c==7||at(c==8||l<=0?3:2),Mt(this);var t=this.g.ca();this.X=t;var n=Dt(this);if(this.o=t==200,dt(this.i,this.v,this.B,this.l,this.S,s,t),this.o){if(this.U&&!this.L){b:{if(this.g){var r,i=this.g;if((r=i.g?i.g.getResponseHeader(`X-HTTP-Initial-Response`):null)&&!fe(r)){var a=r;break b}}a=null}if(e=a)ft(this.i,this.l,e,`Initial handshake response via X-HTTP-Initial-Response`),this.L=!0,Ft(this,e);else{this.o=!1,this.m=3,v(12),Pt(this),Nt(this);break a}}if(this.R){e=!0;let t;for(;!this.K&&this.C<n.length;)if(t=kt(this,n),t==wt){s==4&&(this.m=4,v(14),e=!1),ft(this.i,this.l,null,`[Incomplete Response]`);break}else if(t==Ct){this.m=4,v(15),ft(this.i,this.l,n,`[Invalid Chunk]`),e=!1;break}else ft(this.i,this.l,t,null),Ft(this,t);if(Ot(this)&&this.C!=0&&(this.h.g=this.h.g.slice(this.C),this.C=0),s!=4||n.length!=0||this.h.h||(this.m=1,v(16),e=!1),this.o=this.o&&e,!e)ft(this.i,this.l,n,`[Invalid Chunked Response]`),Pt(this),Nt(this);else if(n.length>0&&!this.W){this.W=!0;var o=this.j;o.g==this&&o.aa&&!o.P&&(o.j.info(`Great, no buffering proxy detected. Bytes received: `+n.length),$n(o),o.P=!0,v(11))}}else ft(this.i,this.l,n,null),Ft(this,n);s==4&&Pt(this),this.o&&!this.K&&(s==4?nr(this.j,this):(this.o=!1,At(this)))}else Un(this.g),t==400&&n.indexOf(`Unknown SID`)>0?(this.m=3,v(12)):(this.m=0,v(13)),Pt(this),Nt(this)}}}catch{}};function Dt(e){if(!Ot(e))return e.g.la();let t=Hn(e.g);if(t===``)return``;let n=``,r=t.length,i=S(e.g)==4;if(!e.h.i){if(typeof TextDecoder>`u`)return Pt(e),Nt(e),``;e.h.i=new o.TextDecoder}for(let a=0;a<r;a++)e.h.h=!0,n+=e.h.i.decode(t[a],{stream:!(i&&a==r-1)});return t.length=0,e.h.g+=n,e.C=0,e.h.g}function Ot(e){return e.g?e.v==`GET`&&e.M!=2&&e.j.Aa:!1}function kt(e,t){var n=e.C,r=t.indexOf(`
6`,n);return r==-1?wt:(n=Number(t.substring(n,r)),isNaN(n)?Ct:(r+=1,r+n>t.length?wt:(t=t.slice(r,r+n),e.C=r+n,t)))}xt.prototype.cancel=function(){this.K=!0,Pt(this)};function At(e){e.T=Date.now()+e.H,jt(e,e.H)}function jt(e,t){if(e.D!=null)throw Error(`WatchDog timer not null`);e.D=ct(l(e.aa,e),t)}function Mt(e){e.D&&=(o.clearTimeout(e.D),null)}xt.prototype.aa=function(){this.D=null;let e=Date.now();e-this.T>=0?(pt(this.i,this.B),this.M!=2&&(at(),v(17)),Pt(this),this.m=2,Nt(this)):jt(this,this.T-e)};function Nt(e){e.j.I==0||e.K||nr(e.j,e)}function Pt(e){Mt(e);var t=e.O;t&&typeof t.dispose==`function`&&t.dispose(),e.O=null,Ke(e.V),e.g&&(t=e.g,e.g=null,t.abort(),t.dis
6pose())}function Ft(e,t){try{var n=e.j;if(n.I!=0&&(n.g==e||Bt(n.h,e))){if(!e.L&&Bt(n.h,e)&&n.I==3){try{var r=n.Ba.g.parse(t)}catch{r=null}if(Array.isArray(r)&&r.length==3){var i=r;if(i[0]==0){a:if(!n.v){if(n.g)if(n.g.F+3e3<e.F)tr(n),Kn(n);else break a;Qn(n),v(18)}}else n.xa=i[1],0<n.xa-n.K&&i[2]<37500&&n.F&&n.A==0&&!n.C&&(n.C=ct(l(n.Va,n),6e3));zt(n.h)<=1&&n.ta&&(n.ta=void 0)}else ir(n,11)}else if((e.L||n.g==e)&&tr(n),!fe(t))for(i=n.Ba.g.parse(t),t=0;t<i.length;t++){let l=i[t],u=l[0];if(!(u<=n.K))if(n.K=u,l=l[1],n.I==2)if(l[0]==`c`){n.M=l[1],n.ba=l[2];let t=l[3];t!=null&&(n.ka=t,n.j.info(`VER=`+n.ka));let i=l[4];i!=null&&(n.za=i,n.j.info(`SVER=`+n.za));let u=l[5];u!=null&&typeof u==`number`&&u>0&&(r=1.5*u,n.O=r,n.j.info(`backChannelRequestTimeoutMs_=`+r)),r=n;let d=e.g;if(d){let e=d.g?d.g.getResponseHeader(`X-Client-Wire-Protocol`):null;if(e){var a=r.h;a.g||e.indexOf(`spdy`)==-1&&e.indexOf(`quic`)==-1&&e.indexOf(`h2`)==-1||(a.j=a.l,a.g=new Set,a.h&&=(Vt(a,a.h),null))}if(r.G){let e=d.g?d.g.getResponseHeader(`X-HTTP-Session-Id`):null;e&&(r.wa=e,y(r.J,r.G,e))}}n.I=3,n.l&&n.l.ra(),n.aa&&(n.T=Date.now()-e.F,n.j.info(`Handshake RTT: `+n.T+`ms`)),r=n;var o=e;if(r.na=ar(r,r.L?r.ba:null,r.W),o.L){Ht(r.h,o);var s=o,c=r.O;c&&(s.H=c),s.D&&(Mt(s),At(s)),r.g=o}else Zn(r);n.i.length>0&&qn(n)}else l[0]!=`stop`&&l[0]!=`close`||ir(n,7);else n.I==3&&(l[0]==`stop`||l[0]==`close`?l[0]==`stop`?ir(n,7):Gn(n):l[0]!=`noop`&&n.l&&n.l.qa(l),n.A=0)}}at(4)}catch{}}var It=class{constructor(e,t){this.g=e,this.map=t}};function Lt(e){this.l=e||10,o.PerformanceNavigationTiming?(e=o.performance.getEntriesByType(`navigation`),e=e.length>0&&(e[0].nextHopProtocol==`hq`||e[0].nextHopProtocol==`h2`)):e=!!(o.chrome&&o.chrome.loadTimes&&o.chrome.loadTimes()&&o.chrome.loadTimes().wasFetchedViaSpdy),this.j=e?this.l:1,this.g=null,this.j>1&&(this.g=new Set),this.h=null,this.i=[]}function Rt(e){return e.h?!0:e.g?e.g.size>=e.j:!1}function zt(e){return e.h?1:e.g?e.g.size:0}function Bt(e,t){return e.h?e.h==t:e.g?e.g.has(t):!1}function Vt(e,t){e.g?e.g.add(t):e.h=t}function Ht(e,t){e.h&&e.h==t?e.h=null:e.g&&e.g.has(t)&&e.g.delete(t)}Lt.prototype.cancel=function(){if(this.i=Ut(this),this.h)this.h.cancel(),this.h=null;else if(this.g&&this.g.size!==0){for(let e of this.g.values())e.cancel();this.g.clear()}};function Ut(e){if(e.h!=null)return e.i.concat(e.h.G);if(e.g!=null&&e.g.size!==0){let t=e.i;for(let n of e.g.values())t=t.concat(n.G);return t}return p(e.i)}var Wt=RegExp(`^(?:([^:/?#.]+):)?(?://(?:([^\\\\/?#]*)@)?([^\\\\/?#]*?)(?::([0-9]+))?(?=[\\\\/?#]|$))?([^?#]+)?(?:\\?([^#]*))?(?:#([\\s\\S]*))?$`);function Gt(e,t){if(e){e=e.split(`&`);for(let n=0;n<e.length;n++){let r=e[n].indexOf(`=`),i,a=null;r>=0?(i=e[n].substring(0,r),a=e[n].substring(r+1)):i=e[n],t(i,a?decodeURIComponent(a.replace(/\+/g,` `)):``)}}}function Kt(e){this.g=this.o=this.j=``,this.u=null,this.m=this.h=``,this.l=!1;let t;e instanceof Kt?(this.l=e.l,Jt(this,e.j),this.o=e.o,this.g=e.g,Yt(this,e.u),this.h=e.h,Xt(this,pn(e.i)),this.m=e.m):e&&(t=String(e).match(Wt))?(this.l=!1,Jt(this,t[1]||``,!0),this.o=Qt(t[2]||``),this.g=Qt(t[3]||``,!0),Yt(this,t[4]),this.h=Qt(t[5]||``,!0),Xt(this,t[6]||``,!0),this.m=Qt(t[7]||``)):(this.l=!1,this.i=new sn(null,this.l))}Kt.prototype.toString=function(){let e=[];var t=this.j;t&&e.push($t(t,tn,!0),`:`);var n=this.g;return(n||t==`file`)&&(e.push(`//`),(t=this.o)&&e.push($t(t,tn,!0),`@`),e.push(yt(n).replace(/%25([0-9a-fA-F]{2})/g,`%$1`)),n=this.u,n!=null&&e.push(`:`,String(n))),(n=this.h)&&(this.g&&n.charAt(0)!=`/`&&e.push(`/`),e.push($t(n,n.charAt(0)==`/`?rn:nn,!0))),(n=this.i.toString())&&e.push(`?`,n),(n=this.m)&&e.push(`#`,$t(n,on)),e.join(``)},Kt.prototype.resolve=function(e){let t=qt(this),n=!!e.j;n?Jt(t,e.j):n=!!e.o,n?t.o=e.o:n=!!e.g,n?t.g=e.g:n=e.u!=null;var r=e.h;if(n)Yt(t,e.u);else if(n=!!e.h){if(r.charAt(0)!=`/`)if(this.g&&!this.h)r=`/`+r;else{var i=t.h.lastIndexOf(`/`);i!=-1&&(r=t.h.slice(0,i+1)+r)}if(i=r,i==`..`||i==`.`)r=``;else if(i.indexOf(`./`)!=-1||i.indexOf(`/.`)!=-1){r=i.lastIndexOf(`/`,0)==0,i=i.split(`/`);let e=[];for(let t=0;t<i.length;){let n=i[t++];n==`.`?r&&t==i.length&&e.push(``):n==`..`?((e.length>1||e.length==1&&e[0]!=``)&&e.pop(),r&&t==i.length&&e.push(``)):(e.push(n),r=!0)}r=e.join(`/`)}else r=i}return n?t.h=r:n=e.i.toString()!==``,n?Xt(t,pn(e.i)):n=!!e.m,n&&(t.m=e.m),t};function qt(e){return new Kt(e)}function Jt(e,t,n){e.j=n?Qt(t,!0):t,e.j&&=e.j.replace(/:$/,``)}function Yt(e,t){if(t){if(t=Number(t),isNaN(t)||t<0)throw Error(`Bad port number `+t);e.u=t}else e.u=null}function Xt(e,t,n){t instanceof sn?(e.i=t,hn(e.i,e.l)):(n||(t=$t(t,an)),e.i=new sn(t,e.l))}function y(e,t,n){e.i.set(t,n)}function Zt(e){return y(e,`zx`,Math.floor(Math.random()*2147483648).toString(36)+Math.abs(Math.floor(Math.random()*2147483648)^Date.now()).toString(36)),e}function Qt(e,t){return e?t?decodeURI(e.replace(/%25/g,`%2525`)):decodeURIComponent(e):``}function $t(e,t,n){return typeof e==`string`?(e=encodeURI(e).replace(t,en),n&&(e=e.replace(/%25([0-9a-fA-F]{2})/g,`%$1`)),e):null}function en(e){return e=e.charCodeAt(0),`%`+(e>>4&15).toString(16)+(e&15).toString(16)}var tn=/[#\/\?@]/g,nn=/[#\?:]/g,rn=/[#\?]/g,an=/[#\?@]/g,on=/#/g;function sn(e,t){this.h=this.g=null,this.i=e||null,this.j=!!t}function cn(e){e.g||(e.g=new Map,e.h=0,e.i&&Gt(e.i,function(t,n){e.add(decodeURIComponent(t.replace(/\+/g,` `)),n)}))}e=sn.prototype,e.add=function(e,t){cn(this),this.i=null,e=mn(this,e);let n=this.g.get(e);return n||this.g.set(e,n=[]),n.push(t),this.h+=1,this};function ln(e,t){cn(e),t=mn(e,t),e.g.has(t)&&(e.i=null,e.h-=e.g.get(t).length,e.g.delete(t))}function un(e,t){return cn(e),t=mn(e,t),e.g.has(t)}e.forEach=function(e,t){cn(this),this.g.forEach(function(n,r){n.forEac
6h(function(n){e.call(t,n,r,this)},this)},this)};function dn(e,t){cn(e);let n=[];if(typeof t==`string`)un(e,t)&&(n=n.concat(e.g.get(mn(e,t))));else for(e=Array.from(e.g.values()),t=0;t<e.length;t++)n=n.concat(e[t]);return n}e.set=function(e,t){return cn(this),this.i=null,e=mn(this,e),un(this,e)&&(this.h-=this.g.get(e).length),this.g.set(e,[t]),this.h+=1,this},e.get=function(e,t){return e?(e=dn(this,e),e.length>0?String(e[0]):t):t};function fn(e,t,n){ln(e,t),n.length>0&&(e.i=null,e.g.set(mn(e,t),p(n)),e.h+=n.length)}e.toString=function(){if(this.i)return this.i;if(!this.g)return``;let e=[],t=Array.from(this.g.keys());for(let r=0;r<t.length;r++){var n=t[r];let i=yt(n);n=dn(this,n);for(let t=0;t<n.length;t++){let r=i;n[t]!==``&&(r+=`=`+yt(n[t])),e.push(r)}}return this.i=e.join(`&`)};function pn(e){let t=new sn;return t.i=e.i,e.g&&(t.g=new Map(e.g),t.h=e.h),t}function mn(e,t){return t=String(t),e.j&&(t=t.toLowerCase()),t}function hn(e,t){t&&!e.j&&(cn(e),e.i=null,e.g.forEach(function(e,t){let n=t.toLowerCase();t!=n&&(ln(this,t),fn(this,n,e))},e)),e.j=t}function gn(e,t){let n=new lt;if(o.Image){let r=new Image;r.onload=u(vn,n,`TestLoadImage: loaded`,!0,t,r),r.onerror=u(vn,n,`TestLoadImage: error`,!1,t,r),r.onabort=u(vn,n,`TestLoadImage: abort`,!1,t,r),r.ontimeout=u(vn,n,`TestLoadImage: timeout`,!1,t,r),o.setTimeout(function(){r.ontimeout&&r.ontimeout()},1e4),r.src=e}else t(!1)}function _n(e,t){let n=new lt,r=new AbortController,i=setTimeout(()=>{r.abort(),vn(n,`TestPingServer: timeout`,!1,t)},1e4);fetch(e,{signal:r.signal}).then(e=>{clearTimeout(i),e.ok?vn(n,`TestPingServer: ok`,!0,t):vn(n,`TestPingServer: server error`,!1,t)}).catch(()=>{clearTimeout(i),vn(n,`TestPingServer: error`,!1,t)})}function vn(e,t,n,r,i){try{i&&(i.onload=null,i.onerror=null,i.onabort=null,i.ontimeout=null),r(n)}catch{}}function yn(){this.g=new Ye}function bn(e){this.i=e.Sb||null,this.h=e.ab||!1}d(bn,Xe),bn.prototype.g=function(){return new xn(this.i,this.h)};function xn(e,t){ze.call(this),this.H=e,this.o=t,this.m=void 0,this.status=this.readyState=0,this.responseType=this.responseText=this.response=this.statusText=``,this.onreadystatechange=null,this.A=new Headers,this.h=null,this.F=`GET`,this.D=``,this.g=!1,this.B=this.j=this.l=null,this.v=new AbortController}d(xn,ze),e=xn.prototype,e.open=function(e,t){if(this.readyState!=0)throw this.abort(),Error(`Error reopening a connection`);this.F=e,this.D=t,this.readyState=1,wn(this)},e.send=function(e){if(this.readyState!=1)throw this.abort(),Error(`need to call open() first. `);if(this.v.signal.aborted)throw this.abort(),Error(`Request was aborted.`);this.g=!0;let t={headers:this.A,method:this.F,credentials:this.m,cache:void 0,signal:this.v.signal};e&&(t.body=e),(this.H||o).fetch(new Request(this.D,t)).then(this.Pa.bind(this),this.ga.bind(this))},e.abort=function(){this.response=this.responseText=``,this.A=new Headers,this.status=0,this.v.abort(),this.j&&this.j.cancel(`Request was aborted.`).catch(()=>{}),this.readyState>=1&&this.g&&this.readyState!=4&&(this.g=!1,Cn(this)),this.readyState=0},e.Pa=function(e){if(this.g&&(this.l=e,this.h||(this.status=this.l.status,this.statusText=this.l.statusText,this.h=e.headers,this.readyState=2,wn(this)),this.g&&(this.readyState=3,wn(this),this.g)))if(this.responseType===`arraybuffer`)e.arrayBuffer().then(this.Na.bind(this),this.ga.bind(this));else if(o.ReadableStream!==void 0&&`body`in e){if(this.j=e.body.getReader(),this.o){if(this.responseType)throw Error(`responseType must be empty for "streamBinaryChunks" mode responses.`);this.response=[]}else this.response=this.responseText=``,this.B=new TextDecoder;Sn(this)}else e.text().then(this.Oa.bind(this),this.ga.bind(this))};function Sn(e){e.j.read().then(e.Ma.bind(e)).catch(e.ga.bind(e))}e.Ma=function(e){if(this.g){if(this.o&&e.value)this.response.push(e.value);else if(!this.o){var t=e.value?e.value:new Uint8Array;(t=this.B.decode(t,{stream:!e.done}))&&(this.response=this.responseText+=t)}e.done?Cn(this):wn(this),this.readyState==3&&Sn(this)}},e.Oa=function(e){this.g&&(this.response=this.responseText=e,Cn(this))},e.Na=function(e){this.g&&(this.response=e,Cn(this))},e.ga=function(){this.g&&Cn(this)};function Cn(e){e.readyState=4,e.l=null,e.j=null,e.B=null,wn(e)}e.setRequestHeader=function(e,t){this.A.append(e,t)},e.getResponseHeader=function(e){return this.h&&this.h.get(e.toLowerCase())||``},e.getAllResponseHeaders=function(){if(!this.h)return``;let e=[],t=this.h.entries();for(var n=t.next();!n.done;)n=n.value,e.push(n[0]+`: `+n[1]),n=t.next();return e.join(`\r
7`)};function wn(e){e.onreadystatechange&&e.onreadystatechange.call(e)}Object.defineProperty(xn.prototype,"withCredentials",{get:function(){return this.m===`include`},set:function(e){this.m=e?`include`:`same-origin`}});function Tn(e){let t=``;return ve(e,function(e,n){t+=n,t+=`:`,t+=e,t+=`\r
8`}),t}function En(e,t,n){a:{for(r in n){var r=!1;break a}r=!0}
8r||(n=Tn(n),typeof e==`string`||y(e,t,n))}function b(e){ze.call(this),this.headers=new Map,this.L=e||null,this.h=!1,this.g=null,this.D=``,this.o=0,this.l=``,this.j=this.B=this.v=this.A=!1,this.m=null,this.F=``,this.H=!1}d(b,ze);var Ln=/^https?$/i,Rn=[`POST`,`PUT`];e=b.prototype,e.Fa=function(e){this.H=e},e.ea=function(e,t,n,r){if(this.g)throw Error(`[goog.net.XhrIo] Object is active with another request=`+this.D+`; newUri=`+e);t=t?t.toUpperCase():`GET`,this.D=e,this.l=``,this.o=0,this.A=!1,this.h=!0,this.g=this.L?this.L.g():_t.g(),this.g.onreadystatechange=f(l(this.Ca,this));try{this.B=!0,this.g.open(t,String(e),!0),this.B=!1}catch(e){zn(this,e);return}if(e=n||``,n=new Map(this.headers),r)if(Object.getPrototypeOf(r)===Object.prototype)for(var i in r)n.set(i,r[i]);else if(typeof r.keys==`function`&&typeof r.get==`function`)for(let e of r.keys())n.set(e,r.get(e));else throw Error(`Unknown input type for opt_headers: `+String(r));r=Array.from(n.keys()).find(e=>e.toLowerCase()==`content-type`),i=o.FormData&&e instanceof o.FormData,!(Array.prototype.indexOf.call(Rn,t,void 0)>=0)||r||i||n.set(`Content-Type`,`application/x-www-form-urlencoded;charset=utf-8`);for(let[e,t]of n)this.g.setRequestHeader(e,t);this.F&&(this.g.responseType=this.F),`withCredentials`in this.g&&this.g.withCredentials!==this.H&&(this.g.withCredentials=this.H);try{this.m&&=(clearTimeout(this.m),null),this.v=!0,this.g.send(e),this.v=!1}catch(e){zn(this,e)}};function zn(e,t){e.h=!1,e.g&&(e.j=!0,e.g.abort(),e.j=!1),e.l=t,e.o=5,Bn(e),x(e)}function Bn(e){e.A||(e.A=!0,_(e,`complete`),_(e,`error`))}e.abort=function(e){this.g&&this.h&&(this.h=!1,this.j=!0,this.g.abort(),this.j=!1,this.o=e||7,_(this,`complete`),_(this,`abort`),x(this))},e.N=function(){this.g&&(this.h&&(this.h=!1,this.j=!0,this.g.abort(),this.j=!1),x(this,!0)),b.Z.N.call(this)},e.Ca=function(){this.u||(this.B||this.v||this.j?Vn(this):this.Xa())},e.Xa=function(){Vn(this)};function Vn(e){if(e.h&&a!==void 0){if(e.v&&S(e)==4)setTimeout(e.Ca.bind(e),0);else if(_(e,`readystatechange`),S(e)==4){e.h=!1;try{let a=e.ca();a:switch(a){case 200:case 201:case 202:case 204:case 206:case 304:case 1223:var t=!0;break a;default:t=!1}var n;if(!(n=t)){var r;if(r=a===0){let t=String(e.D).match(Wt)[1]||null;!t&&o.self&&o.self.location&&(t=o.self.location.protocol.slice(0,-1)),r=!Ln.test(t?t.toLowerCase():``)}n=r}if(n)_(e,`complete`),_(e,`success`);else{e.o=6;try{var i=S(e)>2?e.g.statusText:``}catch{i=``}e.l=i+` [`+e.ca()+`]`,Bn(e)}}finally{x(e)}}}}function x(e,t){if(e.g){e.m&&=(clearTimeout(e.m),null);let n=e.g;e.g=null,t||_(e,`ready`);try{n.onreadystatechange=null}catch{}}}e.isActive=function(){return!!this.g};function S(e){return e.g?e.g.readyState:0}e.ca=function(){try{return S(this)>2?this.g.status:-1}catch{return-1}},e.la=function(){try{return this.g?this.g.responseText:``}catch{return``}},e.La=function(e){if(this.g){var t=this.g.responseText;return e&&t.indexOf(e)==0&&(t=t.substring(e.length)),Je(t)}};function Hn(e){try{if(!e.g)return null;if(`response`in e.g)return e.g.response;switch(e.F){case``:case`text`:return e.g.responseText;case`arraybuffer`:if(`mozResponseArrayBuffer`in e.g)return e.g.mozResponseArrayBuffer}return null}catch{return null}}function Un(e){let t={};e=(e.g&&S(e)>=2&&e.g.getAllResponseHeaders()||``).split(`\r
9`);for(let r=0;r<e.length;r++){if(fe(e[r]))continue;var n=bt(e[r]);let i=n[0];if(n=n[1],typeof n!=`string`)continue;n=n.trim();let a=t[i]||[];t[i]=a,a.push(n)}ye(t,function(e){return e.join(`, `)})}e.ya=function(){return this.o},e.Ha=function(){return typeof this.l==`string`?this.l:String(this.l)};function C(e,t,n){return n&&n.internalChannelParams&&n.internalChannelParams[e]||t}function Wn(e){this.za=0,this.i=[],this.j=new lt,this.ba=this.na=this.J=this.W=this.g=this.wa=this.G=this.H=this.u=this.U=this.o=null,this.Ya=this.V=0,this.Sa=C(`failFast`,!1,e),this.F=this.C=this.v=this.m=this.l=null,this.X=!0,this.xa=this.K=-1,this.Y=this.A=this.D=0,this.Qa=C(`baseRetryDelayMs`,5e3,e),this.Za=C(`retryDelaySeedMs`,1e4,e),this.Ta=C(`forwardChannelMaxRetries`,2,e),this.va=C(`forwardChannelRequestTimeoutMs`,2e4,e),this.ma=e&&e.xmlHttpFactory||void 0,this.Ua=e&&e.Rb||void 0,this.Aa=e&&e.useFetchStreams||!1,this.O=void 0,this.L=e&&e.supportsCrossDomainXhr||!1,this.M=``,this.h=new Lt(e&&e.concurrentRequestLimit),this.Ba=new yn,this.S=e&&e.fastHandshake||!1,this.R=e&&e.encodeInitMessageHeaders||!1,this.S&&this.R&&(this.R=!1),this.Ra=e&&e.Pb||!1,e&&e.ua&&this.j.ua(),e&&e.forceLongPolling&&(this.X=!1),this.aa=!this.S&&this.X&&e&&e.detectBufferingProxy||!1,this.ia=void 0,e&&e.longPollingTimeout&&e.longPollingTimeout>0&&(this.ia=e.longPollingTimeout),this.ta=void 0,this.T=0,this.P=!1,this.ja=this.B=null}e=Wn.prototype,e.ka=8,e.I=1,e.connect=function(e,t,n,r){v(0),this.W=e,this.H=t||{},n&&r!==void 0&&(this.H.OSID=n,this.H.OAID=r),this.F=this.X,this.J=ar(this,null,this.W),qn(this)};function Gn(e){if(w(e),e.I==3){var t=e.V++,n=qt(e.J);if(y(n,`SID`,e.M),y(n,`RID`,t),y(n,`TYPE`,`terminate`),Xn(e,n),t=new xt(e,e.j,t),t.M=2,t.A=Zt(qt(n)),n=!1,o.navigator&&o.navigator.sendBeacon)try{n=o.navigator.sendBeacon(t.A.toString(),``)}catch{}!n&&o.Image&&(new Image().src=t.A,n=!0),n||(t.g=D(t.j,null),t.g.ea(t.A)),t.F=Date.now(),At(t)}E(e)}function Kn(e){e.g&&=($n(e),e.g.cancel(),null)}function w(e){Kn(e),e.v&&=(o.clearTimeout(e.v),null),tr(e),e.h.cancel(),e.m&&=(typeof e.m==`number`&&o.clearTimeout(e.m),null)}function qn(e){if(!Rt(e.h)&&!e.m){e.m=!0;var t=e.Ea;ie||se(),ae||=(ie(),!0),oe.add(t,e),e.D=0}}function Jn(e,t){return zt(e.h)>=e.h.j-+!!e.m?!1:e.m?(e.i=t.G.concat(e.i),!0):e.I==1||e.I==2||e.D>=(e.Sa?0:e.Ta)?!1:(e.m=ct(l(e.Ea,e,t),rr(e,e.D)),e.D++,!0)}e.Ea=function(e){if(this.m)if(this.m=null,this.I==1){if(!e){this.V=Math.floor(Math.random()*1e5),e=this.V++;let i=new xt(this,this.j,e),a=this.o;if(this.U&&(a?(a=be(a),Se(a,this.U)):a=this.U),this.u!==null||this.R||(i.J=a,a=null),this.S)a:{for(var t=0,n=0;n<this.i.length;n++){b:{var r=this.i[n];if(`__data__`in r.map&&(r=r.map.__data__,typeof r==`string`)){r=r.length;break b}r=void 0}if(r===void 0)break;if(t+=r,t>4096){t=n;break a}if(t===4096||n===this.i.length-1){t=n+1;break a}}t=1e3}else t=1e3;t=T(this,i,t),n=qt(this.J),y(n,`RID`,e),y(n,`CVER`,22),this.G&&y(n,`X-HTTP-Session-Id`,this.G),Xn(this,n),a&&(this.R?t=`headers=`+yt(Tn(a))+`&`+t:this.u&&En(n,this.u,a)),Vt(this.h,i),this.Ra&&y(n,`TYPE`,`init`),this.S?(y(n,`$req`,t),y(n,`SID`,`null`),i.U=!0,Tt(i,n,null)):Tt(i,n,t),this.I=2}}else this.I==3&&(e?Yn(this,e):this.i.length==0||Rt(this.h)||Yn(this))};function Yn(e,t){var n=t?t.l:e.V++;let r=qt(e.J);y(r,`SID`,e.M),y(r,`RID`,n),y(r,`AID`,e.K),Xn(e,r),e.u&&e.o&&En(r,e.u,e.o),n=new xt(e,e.j,n,e.D+1),e.u===null&&(n.J=e.o),t&&(e.i=t.G.concat(e.i)),t=T(e,n,1e3),n.H=Math.round(e.va*.5)+Math.round(e.va*.5*Math.random()),Vt(e.h,n),Tt(n,r,t)}function Xn(e,t){e.H&&ve(e.H,function(e,n){y(t,n,e)}),e.l&&ve({},function(e,n){y(t,n,e)})}function T(e,t,n){n=Math.min(e.i.length,n);let r=e.l?l(e.l.Ka,e.l,e):null;a:{var i=e.i;let t=-1;for(;;){let e=[`count=`+n];t==-1?n>0?(t=i[0].g,e.push(`ofs=`+t)):t=0:e.push(`ofs=`+t);let c=!0;for(let l=0;l<n;l++){var a=i[l].g;let n=i[l].map;if(a-=t,a<0)t=Math.max(0,i[l].g-100),c=!1;else try{a=`req`+a+`_`||``;try{var o=n instanceof Map?n:Object.entries(n);for(let[t,n]of o){let r=n;s(n)&&(r=qe(n)),e.push(a+t+`=`+encodeURIComponent(r))}}catch(t){throw e.push(a+`type=_badmap`),t}}catch{r&&r(n)}}if(c){o=e.join(`&`);break a}}o=void 0}return e=e.i.splice(0,n),t.G=e,o}function Zn(e){if(!e.g&&!e.v){e.Y=1;var t=e.Da;ie||se(),ae||=(ie(),!0),oe.add(t,e),e.A=0}}function Qn(e){return e.g||e.v||e.A>=3?!1:(e.Y++,e.v=ct(l(e.Da,e),rr(e,e.A)),e.A++,!0)}
vendor: 6,142 bytes, line 9
9e.Da=function(){if(this.v=null,er(this),this.aa&&!(this.P||this.g==null||this.T<=0)){var e=4*this.T;this.j.info(`BP detection timer enabled: `+e),this.B=ct(l(this.Wa,this),e)}},e.Wa=function(){this.B&&(this.B=null,this.j.info(`BP detection timeout reached.`),this.j.info(`Buffering proxy detected and switch to long-polling!`),this.F=!1,this.P=!0,v(10),Kn(this),er(this))};function $n(e){e.B!=null&&(o.clearTimeout(e.B),e.B=null)}function er(e){e.g=new xt(e,e.j,`rpc`,e.Y),e.u===null&&(e.g.J=e.o),e.g.P=0;var t=qt(e.na);y(t,`RID`,`rpc`),y(t,`SID`,e.M),y(t,`AID`,e.K),y(t,`CI`,e.F?`0`:`1`),!e.F&&e.ia&&y(t,`TO`,e.ia),y(t,`TYPE`,`xmlhttp`),Xn(e,t),e.u&&e.o&&En(t,e.u,e.o),e.O&&(e.g.H=e.O);var n=e.g;e=e.ba,n.M=1,n.A=Zt(qt(t)),n.u=null,n.R=!0,Et(n,e)}e.Va=function(){this.C!=null&&(this.C=null,Kn(this),Qn(this),v(19))};function tr(e){e.C!=null&&(o.clearTimeout(e.C),e.C=null)}function nr(e,t){var n=null;if(e.g==t){tr(e),$n(e),e.g=null;var r=2}else if(Bt(e.h,t))n=t.G,Ht(e.h,t),r=1;else return;if(e.I!=0){if(t.o)if(r==1){n=t.u?t.u.length:0,t=Date.now()-t.F;var i=e.D;r=rt(),_(r,new st(r,n)),qn(e)}else Zn(e);else if(i=t.m,i==3||i==0&&t.X>0||!(r==1&&Jn(e,t)||r==2&&Qn(e)))switch(n&&n.length>0&&(t=e.h,t.i=t.i.concat(n)),i){case 1:ir(e,5);break;case 4:ir(e,10);break;case 3:ir(e,6);break;default:ir(e,2)}}}function rr(e,t){let n=e.Qa+Math.floor(Math.random()*e.Za);return e.isActive()||(n*=2),n*t}function ir(e,t){if(e.j.info(`Error code `+t),t==2){var n=l(e.bb,e),r=e.Ua;let t=!r;r=new Kt(r||`//www.google.com/images/cleardot.gif`),o.location&&o.location.protocol==`http`||Jt(r,`https`),Zt(r),t?gn(r.toString(),n):_n(r.toString(),n)}else v(2);e.I=0,e.l&&e.l.pa(t),E(e),w(e)}e.bb=function(e){e?(this.j.info(`Successfully pinged google.com`),v(2)):(this.j.info(`Failed to ping google.com`),v(1))};function E(e){if(e.I=0,e.ja=[],e.l){let t=Ut(e.h);(t.length!=0||e.i.length!=0)&&(m(e.ja,t),m(e.ja,e.i),e.h.i.length=0,p(e.i),e.i.length=0),e.l.oa()}}function ar(e,t,n){var r=n instanceof Kt?qt(n):new Kt(n);if(r.g!=``)t&&(r.g=t+`.`+r.g),Yt(r,r.u);else{var i=o.location;r=i.protocol,t=t?t+`.`+i.hostname:i.hostname,i=+i.port;let e=new Kt(null);r&&Jt(e,r),t&&(e.g=t),i&&Yt(e,i),n&&(e.h=n),r=e}return n=e.G,t=e.wa,n&&t&&y(r,n,t),y(r,`VER`,e.ka),Xn(e,r),r}function D(e,t,n){if(t&&!e.L)throw Error(`Can't create secondary domain capable XhrIo object.`);return t=e.Aa&&!e.ma?new b(new bn({ab:n})):new b(e.ma),t.Fa(e.L),t}e.isActive=function(){return!!this.l&&this.l.isActive(this)};function or(){}e=or.prototype,e.ra=function(){},e.qa=function(){},e.pa=function(){},e.oa=function(){},e.isActive=function(){return!0},e.Ka=function(){};function sr(){}sr.prototype.g=function(e,t){return new cr(e,t)};function cr(e,t){ze.call(this),this.g=new Wn(t),this.l=e,this.h=t&&t.messageUrlParams||null,e=t&&t.messageHeaders||null,t&&t.clientProtocolHeaderRequired&&(e?e[`X-Client-Protocol`]=`webchannel`:e={"X-Client-Protocol":`webchannel`}),this.g.o=e,e=t&&t.initMessageHeaders||null,t&&t.messageContentType&&(e?e[`X-WebChannel-Content-Type`]=t.messageContentType:e={"X-WebChannel-Content-Type":t.messageContentType}),t&&t.sa&&(e?e[`X-WebChannel-Client-Profile`]=t.sa:e={"X-WebChannel-Client-Profile":t.sa}),this.g.U=e,(e=t&&t.Qb)&&!fe(e)&&(this.g.u=e),this.A=t&&t.supportsCrossDomainXhr||!1,this.v=t&&t.sendRawJson||!1,(t&&=t.httpSessionIdParam)&&!fe(t)&&(this.g.G=t,e=this.h,e!==null&&t in e&&(e=this.h,t in e&&delete e[t])),this.j=new O(this)}d(cr,ze),cr.prototype.m=function(){this.g.l=this.j,this.A&&(this.g.L=!0),this.g.connect(this.l,this.h||void 0)},cr.prototype.close=function(){Gn(this.g)},cr.prototype.o=function(e){var t=this.g;if(typeof e==`string`){var n={};n.__data__=e,e=n}else this.v&&(n={},n.__data__=qe(e),e=n);t.i.push(new It(t.Ya++,e)),t.I==3&&qn(t)},cr.prototype.N=function(){this.g.l=null,delete this.j,Gn(this.g),delete this.g,cr.Z.N.call(this)};function lr(e){$e.call(this),e.__headers__&&(this.headers=e.__headers__,this.statusCode=e.__status__,delete e.__headers__,delete e.__status__);var t=e.__sm__;if(t){a:{for(let n in t){e=n;break a}e=void 0}(this.i=e)&&(e=this.i,t=t!==null&&e in t?t[e]:void 0),this.data=t}else this.data=e}d(lr,$e);function ur(){et.call(this),this.status=1}d(ur,et);function O(e){this.g=e}d(O,or),O.prototype.ra=function(){_(this.g,`a`)},O.prototype.qa=function(e){_(this.g,new lr(e))},O.prototype.pa=function(e){_(this.g,new ur)},O.prototype.oa=function(){_(this.g,`b`)},sr.prototype.createWebChannel=sr.prototype.g,cr.prototype.send=cr.prototype.o,cr.prototype.open=cr.prototype.m,cr.prototype.close=cr.prototype.close,In=On.createWebChannelTransport=function(){return new sr},Fn=On.getStatEventTarget=function(){return rt()},Pn=On.Event=tt,Nn=On.Stat={jb:0,mb:1,nb:2,Hb:3,Mb:4,Jb:5,Kb:6,Ib:7,Gb:8,Lb:9,PROXY:10,NOPROXY:11,Eb:12,Ab:13,Bb:14,zb:15,Cb:16,Db:17,fb:18,eb:19,gb:20},ht.NO_ERROR=0,ht.TIMEOUT=8,ht.HTTP_ERROR=6,Mn=On.ErrorCode=ht,gt.COMPLETE=`complete`,jn=On.EventType=gt,Ze.EventType=Qe,Qe.OPEN=`a`,Qe.CLOSE=`b`,Qe.ERROR=`c`,Qe.MESSAGE=`d`,ze.prototype.listen=ze.prototype.J,An=On.WebChannel=Ze,b.prototype.listenOnce=b.prototype.K,b.prototype.getLastError=b.prototype.Ha,b.prototype.getLastErrorCode=b.prototype.ya,b.prototype.getStatus=b.prototype.ca,b.prototype.getResponseJson=b.prototype.La,b.prototype.getResponseText=b.prototype.la,b.prototype.send=b.prototype.ea,b.prototype.setWithCredentials=b.prototype.Fa,kn=On.XhrIo=b}).apply(Dn===void 0?typeof self<`u`?self:typeof window<`u`?window:{}:Dn);var b=class e{static FOLD_CASE=1;static LITERAL=2;static CLASS_NL=4;static DOT_NL=8;static ONE_LINE=16;static NON_GREEDY=32;static PERL_X=64;static UNICODE_GROUPS=128;static WAS_DOLLAR=256;static LOOKBEHIND=512;static MATCH_NL=e.CLASS_NL|e.DOT_NL;static PERL=e.CLASS_NL|e.ONE_LINE|e.PERL_X|e.UNICODE_GROUPS;static POSIX=0;static UNANCHORED=0;static ANCHOR_START=1;static ANCHOR_BOTH=2},Ln={CASE_INSENSITIVE:1,DOTALL:2,MULTILINE:4,DISABLE_UNICODE_GROUPS:8,LONGEST_MATCH:16,LOOKBEHINDS:512},Rn=128,zn=new Int32Array(Rn),Bn=new Int32Array(Rn),Vn=65535;for(let e=0;e<Rn;e++)e>=97&&e<=122?zn[e]=e-32:zn[e]=e,e>=65&&e<=90?Bn[e]=e+32:Bn[e]=e;var x=class{static CODES=new Map([[`\x07`,7],[`\b`,8],[`	`,9],[`
10`,10],[`\v`,11],[`\f`,12],[`\r`,13],[` `,32],[`"`,34],[`$`,36],[`&`,38],[`'`,39],[`(`,40],[`)`,41],[`*`,42],[`+`,43],[`-`,45],[`.`,46],[`0`,48],[`1`,49],[`2`,50],[`3`,51],[`4`,52],[`5`,53],[`6`,54],[`7`,55],[`8`,56],[`9`,57],[`:`,58],[`<`,60],[`>`,62],[`?`,63],[`A`,65],[`B`,66],[`C`,67],[`F`,70],[`P`,80],[`Q`,81],[`U`,85],[`Z`,90],[`[`,91],[`\\`,92],[`]`,93],[`^`,94],[`_`,95],["`",96],[`a`,97],[`b`,98],[`f`,102],[`i`,105],[`m`,109],[`n`,110],[`r`,114],[`s`,115],[`t`,116],[`v`,118],[`x`,120],[`z`,122],[`{`,123],[`|`,124],[`}`,125]]);static toUpperCase(e){if(e<Rn)return zn[e];let t=String.fromCodePoint(e).toUpperCase(),n=t.codePointAt(0)>Vn?2:1;if(t.length>n)return e;let r=String.fromCodePoint(t.codePointAt(0)).toLowerCase(),i=r.codePointAt(0)>Vn?2:1;return r.length>i||r.codePointAt(0)!==e?e:t.codePointAt(0)}static toLowerCase(e){if(e<Rn)return Bn[e];let t=String.fromCodePoint(e).toLowerCase(),n=t.codePointAt(0)>Vn?2:1;if(t.length>n)return e;let r=String.fromCodePoint(t.codePointAt(0)).toUpperCase(),i=r.codePointAt(0)>Vn?2:1;return r.length>i||r.codePointAt(0)!==e?e:t.codePointAt(0)}},S=class{constructor(e,t=!1){this.data=e,this.isStride1=t,this.SIZE=t?2:3}getLo(e){return this.data[e*this.SIZE]}getHi(e){return this.data[e*this.SIZE+1]}getStride(e){return this.isStride1?1:this.data[e*this.SIZE+2]}get length(){return this.data.length/this.SIZE}},Hn=new Uint8Array(256);for(let e=0;e<64;e++)Hn[`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-`.charCodeAt(e)]=e;var Un=e=>{let t=[],n=0,r=0;for(let i=0;i<e.length;i++){let a=Hn[e.charCodeAt(i)];n|=(a&31)<<r,a&32?r+=5:(t.push(n),n=0,r=0)}return t},C=(e,t)=>{let n=Un(e),r=t?n.length/2:n.length/3,i=new Uint32Array(r*3),a=0,o=0;for(let e=0;e<r;e++)a+=n[o++],i[e*3]=a,a+=n[o++],i[e*3+1]=a,i[e*3+2]=t?1:n[o++];return i},Wn=e=>{let t=Un(e),n=new Map,r=0;for(let e=0;e<t.length;e+=2){r+=t[e];let i=t[e+1],a=i>>>1^-(i&1);n.set(r,r+a)}return n},Gn=class{constructor(e){this.initializer=e,this.cache=new Map}has(e){return e in this.initializer}get(e){if(this.cache.has(e))return this.cache.get(e);let t=this.initializer[e],n=t?t():null;return this.cache.set(e,n),n}},Kn=class{static _CASE_ORBIT=null;static get CASE_ORBIT(){return this._CASE_ORBIT||=Wn(`rCgCIgCY+rQI4QiCuuBLgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCCgCBgCBgCBgCBgCBgCBgCB+7OB-BB-BB-BB-BB-BBskQB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BC-BB-BB-BB-BB-BB-BB-BByHBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBDCBBBCBBBCBBCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBxHBCBBBCBBBCBBB3SBmMBkNBCBBBCBBB8MBCBBB6MB6MBCBBC+EB0MB2MBCBBB6MB+MBiGBmNBiNBCBBBmKBikzCBmNBqNBkIBsNBCBBBCBBBCBBB0NBCBBB0NDCBBB0NBCBBByNByNBCBBBCBBB2NBCBBDCBBCwDFCBCBDBCBCBDBCBCBDBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBB9EBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCCBCBDBCBBBhGBvDBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBjICCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBH2iVBCBBBlKBwiVB+jVB+jVBCBBBlMBqEBuEBCBBBCBBBCBBBCBBBCBBB+hVB4hVB8hVBjNB7MC5MB5MCzMC1MB+0yCE5MB20yCC9MBu2yCBwyyCBo0yCChNBlNBo0yCBu-UBi0yCDlNC6-UBpNDrNIu+UDzNCm0yCBzNE0yyCBzNBpEBxNBxNBtEG1NLqxyCBkxyCnFoFrBCBBBCBBDCBBEkIBkIBkICoHHsCCqCBqCBqCCgEC+DB+DBmkOBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCC+BBgCBgCBgCBgCBgCBgCBgCBgCBrCBpCBpCBpCBmjOB-BB8BB-BB-BBgEB-BB-BByBBqgOBsDB-BBtwBB-BB-BB-BBsBBgDBCB-BB-BB-BBeB-BB-BB61OB-BB-BB-DB9DB9DBQB7DBmCE9CBrDBPBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBrFB-EBOBnHB3FB-FCCBBBNBCBBCjIBjIBjIBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgFBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB8kMB-BB6kMB-BB-BB-BB-BB-BB-BB-BB-BB-BBokMB-BB-BBkkMBkkMB-BB-BB-BB-BB-BB-BB-BB4jMB-BB-BB-BB-BB-BB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EB-EBCBBBCBoiMBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBJCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBeBCBBBCBBBCBBBCBBBCBBBCBBBCBBBdBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBCgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDL-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-C64CgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOBgmOCgmOGgmODg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FBg8FDg8FBg8FBg8FhVg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBg9rCBQBQBQBQBQBQDPBPBPBPBPBPjkC7mMB5mMBnmMBjmMBCBlmMB3lMBpiMBk8kCBCBBG-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FB-7FD-7FB-7FB-7F6FoglCEsuHRwjlCyDCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCB0DBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBG1DD97OCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQDPBPBPBPBPBPDQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQDPBPBPBPBPBPEQCQCQCQCPCPCPCPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPB0EB0EBsFBsFBsFBsFBoGBoGBgIBgIBgHBgHB8HB8HDQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQBQBQBQBQBQBQBPBPBPBPBPBPBPBPBQBQCSFPBPBzEBzEBRCxnOFSFrFBrFBrFBrFBREQBQClkOFPBPBnGBnGFQBQCljOCODPBPB-GB-GBNHSF-HB-HB7HB7HBRqJ53OE9tQBrmQH4Bc3BSgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBgBBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfBfECBByZ0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BB0BBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzBBzB34BgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDBgDB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CB-CBCBBBt-UBruHBt+UB1iVBviVBCBBBCBBBCBBB3hVB5-UB9hVB7hVCCBBCCBBI9jVB9jVBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBICBBBCBBECBBN-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOB-lOC-lOG-lOzoeCBBBCBBBCBBBCBBBCBBBCBl8kCBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBTC
10BBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBnECBBBCBBBCBBBCBBBCBBBCBBBCBBDCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBKCBBBCBBBnglCBCBBBCBBBCBBBCBBBCBBECBBBvyyCDCBBBCBBBgDCCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBn0yCB90yCB10yCBh0yCBn0yCCjxyCBzyyCBpxyCBg6BBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBB-CBl0yCBvjlCBCBBBCBBBt2yCBCBBBCBBBCBBBCBBBCBBBCBBBCBBBCBBBhkzCZCBB9a-5Bd-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCB-8rCm6TCBB7gBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCH-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BmlBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvChDwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCBwCFvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvCBvC1DuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCCuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCBuCCuCBuCBuCBuCBuCBuCBuCCuCBuCCtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCCtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCBtCCtCBtCBtCBtCBtCBtCBtCCtCBtCk2BgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEBgEO-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-DB-D+CgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCL-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-B74CgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BhrVgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCBgCB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BB-BhB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BB2BD1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BB1BtxekCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBkCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjCBjC`),this._CASE_ORBIT}static _Print=null;static get Print(){return this._Print||=new S(C(`hB9CBjBLBCpWBDFBFGBCCCBSBCsMBClBBDxBBDCBC2BBJaBFFBSVBC-FBCvBBD6BBDkDBP6BBDwBBDOBCbBDCCBJBGfBIqCBCgFBCHBDBBDVBCGBCEEBCBDIBDBBDDBJFFBCCBDBDYBDCBCFBFBBDVBCGBCBBCBBCBBDCCBDBFBBDCBEIIBCBCIIBPBLCBCIBCCBCVBCGBCBBCEBDJBCCBCCBDQQBCBDLBIGBCCBCHBDBBDVBCGBCBBCEBDIBDBBDCBICBFBBCEBDRBLBBCFBECBCDBEBBCCCBEEBEEBBBELBFEBECBCDBDHHPUBGMBCCBCWBCPBDIBCCBCDBIBBCCBCBBDDBDJBIVBCCBCWBCJBCEBDIBCCBCDBIBBGCBCDBDJBCCBNMBCCBCyBBCCBCFBFPBDZBCCBCRBEXBCIBCDDBFBEFFBEBCCCBGBHJBDCBN5BBFcBmBBBCCCBDBCXBCCCBVBDEBCCCBFBCJBDDBhBnCBCjBBFmBBCjBBCOBCMBmBlGBCGGD4LBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBDfBEZBH1CBDFBD-TBCbBE4CBIVBKXBKTBNMBCCBCBBN9CBDJBHJBHNBCKBH4CBIqBBGlCBLeBCLBFLBFEEBoBBDEBMrBBFZBHKBE9BBDgCBCcBDKBHJBHNBDtBBDLBVsCBClFBJ7BBEOBE9BBGqBBDKBJqBBG1QBDFBDlBBDFBDHBCGCBdBD0BBCOBCNBDFBCSBDCBCIBSXBJuBBSBBDaBCMBEhBBPgBBQrEBF5UBXKBWz4BBD9LBGsBBCGGD3BBIBBPXBKGBCGBCGBCGBCGBCGBCGBCGBC9DBjBZBC4CBN1GBbPBC+BBC1CBDmDBGqBBC9CBC1CBKvBBCszcBE2BBK7KBV3FBJ8GBV7BBEJBH3BBJlCBJLBHzDBMdBEtCBCKBFgBBC2BBKNBDJBDmDBZbBLFBDFBDFBKGBCGBC7BBF9DBDJBHj9KBNWBFwBBloItLBDpDBnBGBNEBGZBCEBCCCBCCBCCBoUBhBpBBHyBBCSBCDBFEBCmEBF9FBEFBDFBDFBDCBEGBCGBOBBDLBCZBCSBCBBCOBDNBjB6DBGCBFsBBE3CBCMBEwBwBBsBBjEcBEwBBQbBFjBBKdBGqBBGdBCkBBFNBrB9EBDJBHjB
10BFjBBFnBBJzBBMLBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBCnCBJIBxBSBCBBGgBBEaBGaBnB3BBFTBDxBBCBBGHBCCBCcBDCBFJBIIBI-BBhBmBBFLBK1BBEcBDaBGZBIDBNGBxCoCB4ByBBOyBBItBBJJBHlBBEcBJBBxGeBCpBBCCBDBBRFBJIBiBtBBJpBBXZBnBbBVWBKtCBFjBBK9BBCEBOYBIJBH0BBCRBJmBBK-CBCTBMRBCuBB-BGBCCCBCBCOBCKBH6BBGJBHDBCHBDBBDVBCGBCBBCEBCJBDBBDCBDHHGGBDGBEEBMJBCDDClBBCJBCDDCDBCJBCBBJBBe7CBCEBfnCBJJBnF1BBDlBBjBkCBMJBHMBU5BBHJBHTBdaBDOBFWB6F7BBlDyCBNHBDDDBGBCBBCdBCBBDLBKJBnCHBDtBBDKBcnCBJyCBOoCBIJB3CHB5ChBBPJBHIBCsBBCNBLcBEfBDVBCNBqCGBCBBCrBBECCBCCBHBJJBHFBCBBCkBBCBBCFBIJBHrBBFJB3HYBIQBCoBBEcB2CQQBwBBO6cBnDuDBCEBMjGBtyCiDBOvhBBRVBL68DBGmSB61G5BBn2B4RBIeBCJBFwCBCJBHdBDFBLlCBLJBCGBCUBGSBxN5BBnG6CBGYBDYBtBqCBF4BBIQBhCEBMGBK1mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBDDBh7D8HBEzNBHWBQQBQtBBDWBKzDB9B1HBLmBBDpCBJvDBWlCB7DTBNTBN2CBKYBoE0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBD9VBQEBCOBxiBeBHFB2GGBCQBDGBCBBCEBG9BBiBxDxDBrBBENBDJBFBBhKeBS5BBGxOxOBoBB3GqBBFhGhGBdBCVBJBBhHGBCDBCBBCOBCkGBDPBqBrCBFJBFBByYjCBtC8BBjGDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBBvIrBBFjDBNOBDOBCOBCkBBLtFB5BcBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBCmDBmgB-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIBnkzVvHB`,!1)),this._Print}static CATEGORIES=new Gn({C:()=>new S(C(`AfBgDgBBOrWrWBHHBCBICCVuMuMnBBBzBBBE4B4BBGBcDBHQBXhGhGxBBB8BBBmDNB8BBByBBBQddBCCMEBhBGBsCiFiFJBBDBBXIICCBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBPMMBEB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKMMBDBbEByBPBDBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBjoIBvLBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCB-FCBHBBHBBHBBECBIIIBLBDBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIB-BGGBLBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMBxhBPBXJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBF-6DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBrCHBxDUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBND
10BLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIlkzVBxHvw-FB`,!1)),Cc:()=>new S(C(`AfgDgB`,!0)),Cf:()=>new S(C(`tFzqBzqBBEBXhGhGyBhMhMBxCxCs5D9-B9-BBDBbEByBEBCJBw03B6H6HBBBimEQQj7IPBhjiBDBwmFHBn0rYffB+CB`,!1)),Cn:()=>new S(C(`4bBBHDBICCVuMuMnBBBzBBBE4B4BBGBcDBHKBvI9B9BBmDmDBMB8BBByBBBQddBCCMEBjBEBuHJJBDDBXXICCBBBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBbFB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKmDmDNBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBDBvzIBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCC-FCBHBBHBBHBBECBIIIBIBGBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIBlCJBCBBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMB3iBJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBJ76DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBjGUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBND
10BLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIm8yVBCdBhD-DBxHvw-BB---BBB---BBB`,!1)),Co:()=>new S(C(`gg4B-nGh4hc9--BD9--B`,!0)),Cs:()=>new S(C(`gg2B--B`,!0)),L:()=>new S(C(`hCZBHZBwBLLFGGBVBCeBCpOBFLBPEBICCiEEBCBBDDBCHHCCBCCCBSBCyCBCqEBJlFBClBBDHHBnBBoCaBFDBuBqBBkBBBCiDBCQQBIIBLLBBBDRRCdBe4CBMZZBfBKBBFGGBUBFKKEYYBXBIKBGXBCGBRpBB7B1BBETTIJBQPBFHBDBBDVBCGBCEEBCBERROBBCCBPBBLJJBEBFBBDVBCGBCBBCBBCBBgBDBCUUBBBRIBCCBCVBCGBCBBCEBETTQBBYMMBGBDBBDVBCGBCBBCEBEffBCCBBBQSSCFBECBCDBEBBCCCBEEBEEBBBELBX1B1BBGBCCBCWBCPBEbbBBBCBBDBBfFFBGBCCBCWBCJBCEBEffBBBCBBQBBSIBCCBCoBBDRRGCBJCBZFBGRBEXBCIBCDDBFB7BvBBCBBNGB7BBBCCCBDBCXBCCCBIBCBBKDDBDBCWWBCBhBgCgCBGBCjBBcEB0DqBBVRRBEBFDBEEEBIIBBBFMBNSSBkBBCGGDqBBCsKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPBR1CBDFBErTBDQBCZBGqCBHHBIRBOSBPRBPMBCCBQzBBkBFFkC4CBIEBDhBBCGGBkCBLeByBdBDEBMrBBFZB3BWBK0BBzC+C+CBtBBSHB3BdBOBBLrBBbjBBqBCBLjBBDKBGqBBDCBqBDBCFBCBBEGGB+FBhC1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGB1DOORMBmDFFDJBCEEBDBHGCBCBCKBDDBGEBF1B1BB8zC8zCBjHBHDBEBBNlBBCGGD3BBIRRBVBKGBCGBCGBCGBCGBCGBCGBCGBxC2O2OBrBrBBDBGBBF1CBHCBC5CBCDBGqBBC9CBSfBxBPBhQ-tGBhCs0VBkCtBBDsIBEPBLBBVuBBReBDlCByBIBDmDBDxCBVQBCCBCDBCWBezBBPxBB-BFBECCBMMBaBLWBacBIuBBdRRBDBCJBLEBCoBBYCBCHBVWBEEEBwBBCEEBDDBDBDCCZCBDKBICBNFBDFBDFBKGBCGBCqBBCNBHyDBej9KBNWBFwBBloItLBDpDBnBGBNEBGCCBIBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBlBZBHZBM4CBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmMcBEwBBwBfBOTBCHBHlBBLdBDjBBFHBxB9EBTjBBFjBBFnBBJzBBNKBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCQQBCBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4ByBBOyBBOjBBnBbBKWB7HpBBHBBRFB5BcBLJJBUBrBRBvBUBcWBN0BB6BBBDOOBrBBhBYBbjBBeDDJiBBENNBuBBPDBWCCkBRBCYBUBBgCGBCCCBCBCOBCJBIuBBnBHBDBBDVBCGBCBBCEBETTNEBfJBCDDClBBCaaCtBtBBzBBTDBVCBfvBBVBBC5F5FBtBBqBDBlBvBBV8B8BBpBBOoCoCBZBmBGB6FrBB1D-BBgBHBDDDBGBCBBCXBQCC-CHBDmBBRCCdLLBmBBIWWMtBBUTTBnCBoGgBBgBIBCkBBSyByBBcBxDGBCBBClBBWaaBEBCBBCfBPYYBqBBlISBQCCBLBChBB9DwCwCB4cBnHjGBtyCgDBQvhBBSFBa68DBGmSB61GdBj3B4RBIeBSuCBSdBTvBBRDBgBUBGSBxNsBB0G-BBhBYBDYBtBqCBGjCjCBLBhCBBCPPBNNB0mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBn7F0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BeBHFBmI9BBzEsBBLGBRiKiKBcBTrBBlPbBlHdBDwGwGBdBCCBCBBCGBDEBKBBhHGBCDBCBBCOBCkGB8BjCBI1lB1lBBCBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQBlqE-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB`,!1)),LC:()=>new S(C(`hCZBHZB7BLLBVBCeBCiGBCDBFvGBDZBhGDBDBBECBCHHCCBCCCBSBCyCBCqEBJlFBClBBKoBB44ClBBCGGDqBBDCBhV1CBDFBjkCKBGqBBDCBhCrBBgCMBChBBmD1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGBmIFFDJBCEEBDBHGCBCBCFBFDDBCBGEBF1B1BB8zC8zCB6DBDmDBHDBEBBNlBBCGGzoetBBTbBnEtCBCWBEDBCsCBZBBE2Z2ZBpBBGIBIvCBh6TGBNEBqgBZBHZBmlBvCBhDjBBFjBB1DKBCOBCGBCBBCKBCOBCGBCBBk2ByBBOyBB+CVBLVB74C-BBhrV-BBhBYBDYBtpZ0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BJBCTBHFB2uCjCB`,!1)),Ll:()=>new S(C(`hDZB7BqBqBBWBCHBC2BCBQCBuBCDECBBBDCCDEEBFFDEEBBBDDDCCCDCCBCCDEECDDBDDBBBHGDCOCBSCBDDCEEC4BCBFBDDDBCCFICBjCBDZBiGCCEEEBBBTccBhBBCBBECBCWCBDBCGDB0B0BBuBBCgBCK0BCDMCBgDCxBoBBo6CqBBDCB5XFBjkCIBC2D2DBqBBgCMBChBBnD0ECBHBCgDCBHBJFBLHBJHBJFBLHBJHBJNBDHBJHBJHBJEBCBBHEEBBBCBBJDBDBBJHBLCBCBBzIEEBEEcKFDBBJDBF2B2Bs1CvBBCEEBGCFCCBCCBEBGiDCBIICFFNlBBCGG0oesBCUaCoEMCBBBC+BCBGBCCCDICFCCDCCBBBCSCGGGCMCFCCDOCbEE2ZqBBGIBIvCBh6TGBNEBqhBZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBnqZZBbGBCRBbZBbDBCCCBFBCKBbZBbZBbZBbZBbZBbZBbZBbZBbbBdYBCFBbYBCFBbYBCFBbYBCFBbYBCFBC15B15BBIBCTBHFB4vChBB`,!1)),Lm:()=>new S(C(`wVRBFLBPEBICCmEGG-OnHnHlFBBuIBBFgBgBKEEhFoFoF1mBgEgE2R72B72BsDkTkTxOFBvF+BBOjBjBBjBByVOORMBg-CBByHgGgG2OsBsBBDBGiDiDB+C+CBBB34bjnBjnBBEBvIzDzDdBB6DIBxCYYpDDBEBB2OXXqEtDtDWBBoDDBKngVngVuBBBh-BFBCpBBCIB0sBhBhB2K04D04DnrTDB9PCBpBBBnRMBhCBBCPPB9-P9-PBCBCGBCBByhM9BBqGGBud0Q0QsSAB`,!1)),Lo:()=>new S(C(`qFQQhIFFBCBxGBB7ZaBFDBuBfBCJBkBBBCiDBCZZBLLBBBDRRCdBe4CBMZZBfBWVBrBYBIKBGXBCGBRoBB8B1BBETTIJBROBFHBDBBDVBCGBCEEBCBERROBBCCBPBBLJJBEBFBBDVBCGBCBBCBBCBBgBDBCUUBBBRIBCCBCVBCGBCBBCEBETTQBBYMMBGBDBBDVBCGBCBBCEBEffBCCBBBQSSCFBECBCDBEBBCCCBEEBEEBBBELBX1B1BBGBCCBCWBCPBEbbBBBCBBDBBfFFBGBCCBCWBCJBCEBEffBBBCBBQBBSIBCCBCoBBDRRGCBJCBZFBGRBEXBCIBCDDBFB7BvBBCBBNFB8BBBCCCBDBCXBCCCBIBCBBKDDBDBYDBhBgCgCBGBCjBBcEB0DqBBVRRBEBFDBEEEBIIBBBFMBNyDyDBnKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPByDrTBDQBCZBGqCBHHBIRBOSBPRBPMBCCBQzBBpBkCkCBhBBC0BBIEBDhBBCGGBkCBLeByBdBDEBMrBBFZB3BWBK0BBxFuBBSHB3BdBOBBLrBBbjBBqBCBLdByDDBCFBCBBE7hB7hBBCB4-C3BBZWBKGBCGBCGBCGBCGBCGBCGBCGBoR2B2BF1CBJCCB4CBFGGB
10pBBC9CBSfBxBPBhQ-tGBhC0wUBC2jBBkCnBBJrIBFPBLBBjCyByBBkCBqFoDoDEGBCCBCDBCWBezBBPxBB-BFBECCBMMBaBLWBacBIuBBuBEBDIBLEBCoBBYCBCHBVPBCFBEEEBwBBCEEBDDBDBDCCZBBEKBIPPBEBDFBDFBKGBCGByEiBBej9KBNWBFwBBloItLBDpDBkCCCBIBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBqDJBCsBBDeBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmMcBEwBBwBfBOTBCHBHlBBLdBDjBBFHBhEtCBjDnBBJzBB9CzBBN2JBKVBLHB5EFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCQQBCBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4FjBBnBDBCxJxJBoBBHBBRCBCBB5BcBLJJBUBrBRBvBUBcWBN0BB6BBBDOOBrBBhBYBbjBBeDDJiBBENNBuBBPDBWCCkBRBCYBUBBgCGBCCCBCBCOBCJBIuBBnBHBDBBDVBCGBCBBCEBETTNEBfJBCDDClBBCaaCtBtBBzBBTDBVCBfvBBVBBC5F5FBtBBqBDBlBvBBV8B8BBpBBOoCoCBZBmBGB6FrBB0GHBDDDBGBCBBCXBQCC-CHBDmBBRCCdLLBmBBIWWMtBBUTTBnCBoGgBBgBIBCkBBSyByBBcBxDGBCBBClBBWaaBEBCBBCfBPYYBnBBCBBlISBQCCBLBChBB9DwCwCB4cBnHjGBtyCgDBQvhBBSFBa68DBGmSB61GdBj3B4RBIeBSuCBSdBTvBB0BUBGSB0NnBB2MqCBGwFwFB0mHBqBfBiDyDBuwIiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBxzI2P2PBrBBiBiKiKBcBTrBBlPaBmHdBDwGwGBdBCCBCBBCGBDEBKiHiHBFBCDBCBBCOBCkGB8pBDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQBlqE-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB`,!1)),Lt:()=>new S(C(`lOGDnB2sH2sHBGBJHBJHBNQQwBAB`,!1)),Lu:()=>new S(C(`hCZBmDWBCGBiB2BCDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIJDCMCDQCDDDCCBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBDDBBBEWCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBpCDBNDBNDBNEBMDBnIFFECBDCBDEEBDBHGCBCBDDBLBBG+B+B9zCvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoqZZBbZBbZBbCCBGDBDDBCBCHBbZBbBBCDBDHBCGBcBBCDBCEBCEEBFBcZBbZBbZBbZBbZBbZBfYBiBYBiBYBiBYBiBYBiB2pE2pEBgBB`,!1)),M:()=>new S(C(`gYvDB0IGBoIsBBCCCBCCBCCpCKBxBUBRmDmDBFBDFBDBBCDBkBffBZB8CKB7BIBKZZBCBCIBCCBCEBsBCB8BIBrBXBCgBB3BCBCRBCGBLBBeCB5BCCBFBDBBDCBKLLBbbDCB5BCCBDBFBBDCBEffBEEMCB5BCCBGBCCBCCBVBBXFBCCB5BCCBFBDBBDCBICBLBBf8B8BBDBECBCDBKpBpBBDB4BCCBFBCCBCDBIBBMBBeCB5BCCBFBCCBCDBIBBMBBQNNBCB4BBBCGBCCBCDBKLLBeeBBBnCFFBEBCCCBGBTBB+BDDBFBNHBjDDDBHBMGBqCBBcECFBByBTBCBBGKBCjBBKlDlDBSBYDBFCBCCBDGBEDBOLBCLLBCBgWCBzdDBdCBeBBfBBhCfBKuBuBBBBC2D2DBjBjB3DLBFLB8GEB6BJBCcBDxBxBBsBBDLBVEBwBQBnB
10IBNCBfMB5BNBxBTB5ECBCUBFHHDCBnG-BBxWgBB--CCBuEhDhDBeBrRFBqDBB1udDBCJBhBBBxCBBxIEEFYYBDBF0C0CBzBzBBQBbRBOnBnBBGBaMBtBDBwBNBlBkCkCBMBNJJBuBuBBBBzBCCBBBDBBGBBCqBqBBDBGBBtHHBCBBx5TiXiXBOBRPBuejHjH2EEBn0BCBCBBGDBpBCBFmFmFB+R+RBCBiCEB+JBBuCFBnCKByBDB7DCB2BOBqBDDBLLBCBuBKBI+B+BBBBlBNBRBBtBNNBBBxBNBJDBCBB9CLBHDD+ELBWDB4BBBCGBDBBDCBKLLBDDBFBEEBkCIBCDDCDBCEBCPPBzCzCBQBYyCyCBSBsHGBDIBcBBzCQBrDMBmDOBhIOB2HFBCBBDDBCCCBuEuEBFBDGBEddBIBpBGBCDBJKKBJBvBPBnGHBoGHBCHBzCVBCNB7DFBECCBCCBFBCjCjCBDBCBBCEB8KDBKBBCxBxBBFBEEBYmnFmnFHOBpmLRBhuCEB8BGB5gBCCB1BBIDByCMMBslTslTBizEizEBsBBDWB-QEBEFBJHBDGBfDB1ECB89B2BBFxBBJPPXEBCOBxqBGBCQBDGBCBBCEBlDhFhFBFB4L+B+BBCB9PDB-HBB0HDDIBBG7O7OBFBuDGB29lYvHB`,!1)),Mc:()=>new S(C(`joC4B4BDCBJDBCBBzBBB7BCBHBBDBBLsBsB7BCBjC7B7BBBBJCCB2B2BB7B7BCHHBDDBLLnDBBCBBECBCCBLqBqBBBB+BDB+BBB7BCCBDBDBBCBBKBBdPPB7B7BBBBGCBCCBLrBrBBsCsCBBBHHBTBBrKBBgCsFsFBFFHDDBaaBLLBBBDGBWBBDFBDLLBBB5zBffiEIIBGBCBB7KDBDCBFBBCFBhHBB7BCCKCCBJJBEByExBxBGCCBDBCBB+BffFBBD9B9BDCBCEEBxBxBBGBJBBsFWW35EBB0-dBBD5C5CBzBzBBOBvEBBwBxBxBBFFBDDBBBvDBBDBBZuBuBCuDuDDBBGuHuHBCCBCCBCC0gZCCgEuBuBBBBFBB0DZZB8B8BxBCBKBBO+C+CBBBEBBCrFrFBBBgBBB7BBBCDBDBBDCBKLLB1C1CBBBIDDCDBCBBCmDmDBBBJBBErDrDBBBHCCBCBDuHuHBBBHDBDyDyDBBBJBBCuDuDCBBHoDoDCBBFmImIBBBK4H4HBEBCBBFDDCvEvEBBBJDBF1C1CeBB-BqGqGECCoGPPrDIID2G2GBDBFBBC-K-KBNNxBBBJBBCpvQpvQBBBlxD2BBpDBB0rYBBHFB`,!1)),Me:()=>new S(C(`okBBB1xF-wB-wBBCBCCBsshBCB`,!1)),Mn:()=>new S(C(`gYvDB0IEBqIsBBCCCBCCBCCpCKBxBUBRmDmDBFBDFBDBBCDBkBffBZB8CKB7BIBKZZBCBCIBCCBCEBsBCB8BIBrBXBCfB4BCCFHBFEEBFBLBBe7B7BFDBJVVBbbDBB6BFFBFFBDDBBBEffBEEMBB6BFFBDBCBBFVVBXXBEBC7B7BDCCBCBJIIBMMBff+BNNzBEE4BCCBBBGCBCDBIBBMBBe7B7BDHHGBBVBBdBB6BBBFDBJVVBeepCIIBBBC7C7CDGBNHBjDDDBHBMGBqCBBcEC4BNBCEBCBBGKBCjBBKnDnDBCBCFBCBBDBBaBBFCBRDBODDBHHQgWgWBBBzdCBeBBfBBfBBhCBBCGBJDDBJBKuBuBBBBC2D2DBjBjB3DCBFBBKHHBBB8GBBD7B7BCGBCCCDHBHJBDxBxBBMBCeBDLBVDBxBCCBDBCGGpBIBNBBhBDBDBBCCB5BCCBEECCB7BHBDBB5ECBCMBCGBFHHEBBnG-BBxWMBFEEBKB--CCBuEhDhDBeBrRDBsDBB1udFFBIBhBBBxCBBxIEEFaaBGG4EBBbRBOnBnBBGBaKBvBCBxBDDBCBDBBoBkCkCBEBDBBDBBNJJwB0B0BCCBDBBGBBCrBrBBJJvHDDFx5Tx5TiXPBRPBuejHjH2EEBn0BCBCBBGDBpBCBFmFmFB+R+RBCBiCEB+JBBuCFBnCKByBDB8D3B3BBNBqBDDBLLBBByBDBDBBI+B+BBBBlBEBCHB-BNNB1B1BBHBLDBDgDgDBBBDCCBHHD+E+EEHBWBB6BBBEmBmBBFBEEBnCFBOECPBB2CHBDCBCYY1CFBCFFBCCBvHvHBCBHBBCBBcBB2CHBDCCBrDrDCDDBEBCmDmDCDDBCBCEBkIIBCBBhIBBCFFxEDBDBBFhBhBBIBpBFBDDBJKKBEBDCBvBMBCBBnGCCBBBCqGqGBFBCFBCzCzCBUBDGBCBBCBB7DFBECCBCCBFBCpCpCBEEC8K8KBMMB1B1BBDBGCCYmnFmnFHOBpmLLBECBhuCEB8BGB5gBgCgCBCByC5lT5lTBizEizEBsBBDWBhRCBSHBDGBfDB1ECB89B2BBFxBBJPPXEBCOBxqBGBCQBDGBCBBCEBlDhFhFBFB4L+B+BBCB9PDB-HBB0HDDIBBG7O7OBFBuDGB29lYvHB`,!1)),N:()=>new S(C(`wBJB5DBBGDDBBBitBJBnEJBnGJB9MJB3DJBFFBtDJB3DJB3DJBDFBvDMB0DJBJGBoDJBpDGBISBuDJBhDJB3DJBnCTBtIJBnCJBwWTBybCBwHJBHJBXJBtJJBhEKBmFJBHJB3FJB3CJBnEJBHJB3gBEEBEBHJBnGyBBDEB3W7BBvCVB3TdBqrBqYqYaIBPCB4KDBrEJBfHBCOBhBJBoBOBh7cJB9FJBhKFB7EJBnBJBnGJBXJB3CJB3MJB34UJBuPsBBN4BBSBB2KaBlBDBeJJnEEBrGJBvdHBaGBoBIBsCEBXFBhFBBDPBDtBBhCIB1BBBfCBsCEBpDHBZHBqBGBrKFBxBJBHJB3IeB-EJBrBDBxDGBnEdBhEJB9BJBxEJBITB8HJB3KJB3DJB3LJBnDJBHTBtCLBlNSB+CJB3UJB3CcBkHJBnCJB3BJBnLJBnDUBshBuDBimPJBnpCJB3CJBnEJBCGBvQJBnIWB+KCB6nXJBnuBTBNTBtDYB2iBxBBhqCJBnNJB3PJB4HJBtWIBhEJB4Y6BBCCBCDBtCsBBCOBjeMBk3CJB`,!1)),Nd:()=>new S(C(`wBJnxBJnEJnGJ9MJ3DJ3DJ3DJ3DJ3DJ3DJ3DJ3DJ3DJhDJ3DJnCJ3IJnCJn6BJnBJtJJhEJnFJHJ3FJ3CJnEJHJnuiBJnVJnBJnGJXJ3CJ3MJ34UJnsBJnkCJHJ9YJhEJ9BJxEJ3IJ3KJ3DJ3LJnDJHTtCJnNJnDJ3UJ3CJ3HJnCJ3BJnLJ3uQJnpCJ3CJnEJ3QJ37XJ12CxBhqCJnNJ3PJ4HJ2aJ30EJ`,!0)),Nl:()=>new S(C(`u3FCBwzCiBBDDB-zDaaBHBPCBs1dJBxyW0BBtOJJnEEBrhIuDBm8SCB`,!1)),No:()=>
10new S(C(`yFBBGDDBBB2pCFB5LFB5DCBmEGB6GGBSIByNJB2hBTB0jBJBhP20B20BEFBHJBnGPBqB3W3WB6BBvCVB3TdBqrB1kB1kBBCBrEJBfHBCOBhBJBoBOBxrdFBymWsBBiCDBSBB2KaBlBDB1pBHBaGBoBIBsCEBXFBhFBBDPBDtBBhCIB1BBBfCBsCEBpDHBZHBqBGBrKFBhLeB-EJBrBDBxDGBnETB8LTBmqBBBvNIBobSB0aUBn8SGB-YWBqhZTBNTBtDYBvqFIBid6BBCCBCDBtCsBBCOBjeMB`,!1)),P:()=>new S(C(`hBCBCFBCDBLBBEBBbCBCccCkBkBGEELBBEEE-VJJzOFBqBBB0BCCDDDtBBBVBBCBBOCCBBBrCDBnDsBsBBMBqHCB3BOBgBmImIBLLtE5D5D6DnMnMNwLwL7CLLBpFpFBNBCmBmBBCBoCrCrCBDBFBBwDFBsFlTlTBHB4EuTuTtBBBvCCBoCBB+ECBCCBmBKB6JBB5GBBhEGBCFBhFBBLGBdCB9DDB8BEB-BBBhCHBM9Z9ZBWBJTBCMBCLBfBBPBB6TDBeBB+hBNBwCBBgBJB0MVBgCDBhBBB8XDBCBBxDwEwEBtBBCfBDLBkNCBFJBDLBRNNjD7C7CjgdBBuICBkDLL0DFB9LDB3CBBpBCBCyByBBwBwBiDMBRBB9DDB-DBBRBB6HzqUzqUBxGxGBIBXiBBCNBCFFCBB2ECBCFBCDBLBBEBBbCBCccCCCBFB7MCB9UxBxB-MoXoXoGgBgBxIIBnBxDxDBFBjCGB6CDByO-J-JjBlElEBDBtBDB+FGBuDBBCDB-DDBxBBBwCDBFOOCCB5CFBsDrJrJBCCBzDzDBDBLBBCpDpD7HWBqDCBdMBtCjEjEBBB9HpIpIBBB8E9C9CBGB0CCBCEB+CJB4GgDgDBDBrBBBmUBBrCMBwFxjBxjBBDB97CBB8zOBBmEiCiCBDBJpRpRBBBoJDBoK9lT9lTovHEB07C-a-aBAB`,!1)),Pc:()=>new S(C(`-Cg-Hg-HBUU-u3BBBZCBwHAB`,!1)),Pd:()=>new S(C(`tB9qB9qB0BiyDiyDmgBqgCqgCBEBiwDDDgBBBFdd-NUUwDxszBxszBBmBmBLqFqFhzD-J-J`,!1)),Pe:()=>new S(C(`pB0B0BgB+1D+1DC-6B-6BqtC4B4BQ7T7TCff-hBMCxChBhBCGC1MUChCCCiBmhBmhBCECtBGCtNICEGCDBB-ozB6G6GeOCESSCCCrF0B0BgBGD`,!1)),Pf:()=>new S(C(`7F+6H+6HEddpuDCCFDDQEE`,!1)),Pi:()=>new S(C(`rFt7Ht7HDBBDaapuDCCFDDQEE`,!1)),Po:()=>new S(C(`hBCBCCBDECBLLBEEBcclCGGPBBI-V-VJzOzOBEBqB3B3BDDDtBBBVBBCBBOCCBBBrCDBnDsBsBBMBqHCB3BOBgBmImIBLLtE5D5D6DnMnMNwLwL7CLLBpFpFBNBCxDxDrCEBFBBwDFBsFlTlTBHBmY9D9DBBBoCBB+ECBCCBmBFBCDB6JBB5GBBhEGBCFBhFBBLGBdCB9DDB8BEB-BBBhCHBMjajaBJJBGBJIBDDBDCBEKBCCCBIB7kDDBCBBxDwEwEBFFBBBDDDBHBCBBCDDBLLBDBCJBDDBCCCBLBDCBtNCB6B+F+FjgdBBuICBkDLL0DFB9LDB3CBBpBCBCyByBBwBwBiDMBRBB9DDB-DBBRBB6HlxUlxUBFBDXXVBBDDBECBCDBICBHCCB2E2EBBBCCBDECBLLBEEBcclBDDB7M7MBBB9UxBxB-MoXoXoGgBgBxIIBnBxDxDBFBjCGB6CDB0ZlElEBDBtBDB+FGBuDBBCDB-DDBxBBBwCDBFOOCCB5CFBsDrJrJBCCBzDzDBDBLBBCpDpD7HWBqDCBdMBtCjEjEBBB9HpIpIBBB8E9C9CBGB0CCBCEB+CJB4GgDgDBDBrBBBmUBBrCMBwFxjBxjBBDB97CBB8zOBBmEiCiCBDBJpRpRBBBoJDBoK9lT9lTovHEB07C-a-aBAB`,!1)),Ps:()=>new S(C(`oBzBzBgB-1D-1DC-6B-6B-rCEEnB4B4BQ7T7TCff-hBMCxChBhBCGC1MUChCCCiBmhBmhBCECaTTCECtNICEGCDipzBipzB4GeeCMCESSCCCrFzBzBgBEEDAB`,!1)),S:()=>new S(C(`kBHHRCBgBCCcCCkBEBCBBDCCBCBDEEfgBgBrODBNNBGGBCCCBPB2DPPBxDxDsErIrIBBB3DCBDDDBvGvGLUUB4H4HIBBpEqLqLBHHB2H2H-DjEjEBGBlEwGwGqBmGmGiGCBQCCBBBDFBVECmEHBCFBCBBGDBmGBBxXJB0WuLuLlL+E+EBgBBiLJBKIBhiBCCBBBMCBOCBOCBOBBmCOOoBCBOCBUhBB-BBBCDBCBBLCCBBBGFBCECFMMBFFBDBGDBC7B7BBFFB2LBFcBD+HBXKByCtCBXnTBtBwBBDeBLyMBX+BBFfBD1LBDpEBmHFBmLBBvBZBC4CBN1GBbPBFOOBNNWBBHBB8CBB0HBBFJBhBlBBKRRBdBMdBJQQBeBLmBBQ-JBhuG-BBx0V2BB6RWBKBBoDBB+EDBLDB+RCBiHPPB+9T+9TpEgBBuLPBhCBB3BHBtBDBjDCCBBBD7E7EHRRBBBgBCCcCCiEGBCGBOBB6JIB6BQBDCBCMBEwBwBBrBB7zBBBwSmWmWBiKiKBGBnjC2kC2kCBbBr6SDBG3qU3qUk7DvHBLCBEzNBHWBQQBgDzDB9B1HBLmBBD7BBGCBXBBIdBF8BBWhCBE7F7FB1CBrbaagBaagBaagBaagBaa9B-PB4BDBzBHBCNBCBBp2BwNwNttCEE+DiOiOBvIvIBqBBFjDBNOBDOBCOBCkBBYgFB5BcBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBC7CBLAB`,!1)),Sc:()=>new S(C(`kB+D+DBCBqnB8D8DzPBBzPBBI2H2HoImSmS8sClmClmCBgBB37hBkuVkuVtD7E7E8GBBEBB3-HDB-4wBxtCxtC`,!1)),Sk:()=>new S(C(`+CCCoCHHFEEqQDBNNBGGBCCCBPB2DPPBjoBjoB15FCCBBBMCBOCBOCBOBB9kEBBkzdWBKBBoDBBxePPBniUniUBPB8bCCjF4g9B4g9BBDB`,!1)),Sm:()=>new S(C(`rBRRBBB+BCCuBFFmBgBgB-XwQwQBBB8xGOOoBCBOCBsEoBoBBDBHlClCBDBGBBFGDIgBgBBDDCgBgBBqIBhBBB7CffBXBpBFB2OKK3BHBwDxKxKBDBDeBLPBhIiEBX+BBFfBDhIBxBUBDFB9+zB5Z5ZCCBlFRRBBB+BCCkEHHBCBitDBBhrwBx+Bx+BagBgBagBgBagBgBagBgBat5Ft5FB-uC-uCBHB`,!1)),So:()=>new S(C(`mFDDFCCyerIrIBgEgEBvGvGLUUB4H4HkQ2L2LjEFBClElEwGqBqBoMCBQCCBBBDFBVECmEHBCFBCBBGDBmGBBxXJB0WzWzW+EhBBiLJBKIBksBBBCDBCBBLCCBHHBEBCECFMMBPPCBBC7B7BBKKBDBDDBCBBCBBCGBCeBDBBCCCBdBtIHBFTBDGBDwCBCdBanBBHnCBXKByCtCBX2FBCIBC1BBJuDBC3HBtBrBBhC-HBhQvBBWBBHmBBDpEBmHFBmLBBvBZBC4CBN1GBbPBFOOBNNWBBHBBxKBBFJBhBlBBKRRBdBMdBJQQBeBLmBBQ-JBhuG-BBx0V2BBibDBLBBC+R+RBBBqqUPBuLPBhCBB3BHBuBCBlPEEFBBOBB6JIB6BQBDCBCMBEwBwBBrBB7zBBBwSpgBpgBBGBnjC2kC2kCBGBFQBr6SDBG3qU3qUk7DvHBLCBEzNBHWBQPBhDzDB9B1HBLmBBD7BBGCBXBBIdBF8BBWhCBE7F7FB1CBqlB-PB4BDBzBHBCNBCBBp2B96C96CiEyWyWBqBBFjDBNOBDOBCOBCkBBYgFB5BcBOrBBFIBIBBPFB7E6HBG4WBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBB-B3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBC7CBLAB`,!1)),Z:()=>new S(C(`gBgEgEgvFgsCgsCBJBeBBGwBwBh9DAB`,!1)),Zl:()=>new S(C(`ohIA`,!0)),Zp:()=>new S(C(`phIA`,!0)),Zs:()=>new S(C(`gBgEgEgvFgsCgsCBJBlBwBwBh9DAB`,!1)),ASCII_Hex_Digit:()=>new S(C(`wBJIFbF`,!0)),Alphabetic:()=>new S(C(`hCZBHZBwBLLFGGBVBCeBCpOBFLBPEBICC3CeeBQBCBBDDBCHHCCBCCCBSBCyCBCqEBJlFBClBBDHHBnBBoBNBCCCBCCBCCJaBFDBeKBG3BBCGBPlDBCHBFHBFCBLCBDRRBuBBOkDBZgBBKBBFGGBWBDSBUYBIKBGXBCGBIJJBoBBLLBEGBHrCBCPBCCBFOBOSBCHBDBBDVBCGBCEEBCBEHBDBBDBBCJJFBBCEBNB
10BLFFBBBCFBFBBDVBCGBCBBCBBCBBFEBFBBDBBFIIBCBCSSBEBMCBCIBCCBCVBCGBCBBCEBEIBCCBCBBEQQBCBWDBFCBCHBDBBDVBCGBCBBCEBEHBDBBDBBKBBFBBCEBORRBCCBEBECBCDBEBBCCCBEEBEEBBBELBFEBECBCCBEHHpBMBCCBCWBCPBEHBCCBCCBJBBCCBCBBDDBdDBCHBCCBCWBCJBCEBEHBCCBCCBJBBGCBCDBOCBNMBCCBCoBBDHBCCBCCBCGGBCBIEBXFBCCBCRBEXBCIBCDDBFBJFBCCCBGBTBBO5BBGGBH0B0BBECBDBCXBCCCBRBCCBDEBCHHPDBhBgCgCBGBCjBBFSBFPBCjBBkC2BBCDDBDBR-BBLDBDlBBCGGDqBBCsKBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBmBPBR1CBDFBErTBDQBCZBGqCBEKBITBMUBNTBNMBCCBCBBNzBBDSBPFFkC4CBIqBBGlCBLeBCLBFIBYdBDEBMrBBFZB3BbBF+BBDTBzBYYBMMBBByBzBBCOBCHB0BpBBDDBLrBBCKBP2BBXCBLjBBDKBGqBBDCBqBDBCFBCBBEGGB+FBUhBBM1IBDFBDlBBDFBDHBCGCBdBD0BBCGBCEEBBBCGBEDBDFBFMBGCBCGB1DOORMBmDFFDJBCEEBDBHGCBCBCKBDDBGEBFSSBnBBuZzBB34BkHBHDBEBBNlBBCGGD3BBIRRBVBKGBCGBCGBCGBCGBCGBCGBCGBCfBwB2O2OBBBaIBIEBDEBF1CBHCBC5CBCDBGqBBC9CBSfBxBPBhQ-tGBhCs0VBkCtBBDsIBEPBLBBVuBBGHBEwDBoBIBDmDBDxCBVUBCgBBZzBBNjCBCtBtBBEBECCBBBLgBBGiBBOcBEyBBCLBQRRBOBLEBC2BBKNBTWBEkCBCCCZCBDPBDDBMFBDFBDFBKGBCGBCqBBCNBH6DBWj9KBNWBFwBBloItLBDpDBnBGBNEBGLBCMBCEBCCCBCCBCCBqDBiBqLBT-BBD1BBpBLB1DEBCmEBlBZBHZBM4CBEFBDFBDFBDCBkBLBCZBCSBCBBCOBDNBjB6DBmC0BBsIcBEwBBwBfBOdBGqBBGdBDjBBFHBCEBrB9EBTjBBFjBBFnBBJzBBNKBCOBCGBCBBCKBCOBCGBCBBEzBBN2JBKVBLHBZFBCpBBCIBmCFBDCCBqBBCBBEDDBVBLWBKeBiCSBCBBLVBLZBHZBnB3BBHBBhCDBCBBGHBCCBCcBrBcBEcBkBHBCbBc1BBLVBLSBORBvDoCB4ByBBOyBBOnBBjBbBEGGBVB7HpBBCBBEBBRFBzBCBEcBLJJBUBrBRBvBUBcWBKlCBsBEBL4BBKOOBXBYyBBSDBJiBBEKKB+BBCDBKBBLCCkBRBChBBDHHBCB-BGBCCCBCBCOBCJBI4BBYDBCHBDBBDVBCGBCBBCEBEHBDBBDBBEHHGGBdJBCDDClBBCJBCDDCDBCBBECCtBhCBCCBCDBVCBfhCBDBBC5F5FB0BBDGBaFBjB+BBCEE8B1BBDoCoCBZBDNBWGB6F4BBoD-BBgBHBDDDBGBCBBCdBCBBDBBDDB+CHBDtBBDFBCCCBccBxBBDJBSnCBGTTBnCBoDHB5CgBBgBIBCsBBCGBCyByBBcBDVBCNBqCGBCBBCrBBECCBCCBBBCDDBZZBEBCBBCkBBCBBCDBCYYBqBBlIWBKQBCoBBECBwDwCwCB4cBnDuDBSjGBtyCgDBQvhBBSFBa68DBGmSB61GuBBy2B4RBIeBSuCBSdBTvBBRDBgBUBGSBxNsBB0G-BBhBYBDYBtBqCBF4BBIQBhCBBCNNBFBK1mHBqBfBiDyDB+vIDBCGBCBBCiJBQeeBBBDPPBCBJrMBloCqDBGMBEIBIJBFi7Fi7FBzCBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDYBCYBCeBCYBCeBCYBCeBCYBCeBCYBCHB15BeBHFB2GGBCQBDGBCBBCEBG9BBiBxDxDBrBBLGBRiKiKBcBTrBBlPbBlHdBDwGwGBdBCVBJBBhHGBCDBCBBCOBCkGB8BjCBEEE1lBDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1TZBHZBHZB3zD-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB`,!1)),Dash:()=>new S(C(`tB9qB9qB0BiyDiyDmgBqgCqgCBEB+BoBoBQnMnMlgDDDgBBBFdd-NUUwDxszBxszBBmBmBLqFqFhzD-J-J`,!1)),Emoji:()=>new S(C(`jBHHGJBwDFFu8HNN5GXX7CFBQBBwLBBNnFnFaKBFCBoGoHoHBLLK7B7BBCBCEBKGDBDDFDDCBBDIEBJJBBBGCCGLBMBBDCCBCCTDDBTTBEBCCCBEEBGGDBBFBBMBBGBBDGGBECBVVBGGBEBCDBDFFDDDBEBCDDCCCHEEHLLBQQDFFCFFBBBCMMBxBxBBBBKeP1LBBwOCBUBB0BFF7mBNN6SCCrrvDrGrGhFBBNBBPDDBIBsCZBCBBYVVDIBWBBvFhBBDvDBDBBCCBDyCBDCBCmIBC+BBMFBCXBIBBDHBNDDBCBDFFBOOBDDJBBKGGBBBNCBJCBDCCFHHEHHB0CBxBlCBGHBDDBEJBECCBEEDJBkHLBF8I8IBtBBCJBC4FBxDMBEKBE4BBCFFBOBDLBFJB`,!1)),Emoji_Component:()=>new S(C(`jBHHGJB0+H2G2Gsp3B3+8B3+8BBYB8PEBxtBDBtzhY-CB`,!1)),Emoji_Modifier:()=>new S(C(`7-8DE`,!0)),Emoji_Modifier_Base:()=>new S(C(`9wJ8G8GRDB4jzD9B9BBBBDDDBBB2DBBDKBWSBEFFBBBCCBICCZqGqGBFFWFFBvFvFBBBEEB0CRRBBBKMMgSDDJHBHKKBIBDCB5B+B+BBCCBCCSCBCMBmHCBrBIB`,!1)),Emoji_Presentation:()=>new S(C(`64IBBuGDBEDDqQBBWBBzBLBsBUUOJJBSSBGGBJJGWWIBBCFFDIIFBBdkBkBCFFBBBC+B+BBBBZPP8aBB0BFFvlxDrGrG-FDDBIBsCZBCZZVDDBDBCCBWBBvFgBBNIBClCBCVBNqBBFEBNQBEEEBlCBCCCB5FBD+BBODBCXBTbbBOO3C0CBxBlCBHEEBBBDDBEDBMBBIIBkHLBF8I8IBtBBCJBC4FBxDMBEKBE4BBCFFBOBDLBFJB`,!1)),Extended_Pictographic:()=>new S(C(`pFFFu8HNN5GXX7CFBQBBwLBBNnFnFaKBFCBoGoHoHBLLK7B7BBCBCEBKGDBDDFDDCBBDIEBJJBBBGCCGLBMBBDCCBCCTDDBTTBEBCCCBEEBGGDBBFBBMBBGBBDGGBECBVVBGGBEBCDBDFFDDDBEBCDDCCCHEEHLLBQQDFFCFFBBBCMMBxBxBBBBKeP1LBBwOCBUBB0BFF7mBNN6SCCrrvDoBoBBCBlDLBQBBQPPBmBmBBIBxDBBNBBPDDBIBU3BBcOBLVVDIBCDBKWBH7FBDvDBDBBCCBDyCBDCBCDBG9HBC+BBMFBCXBIBBDHBNDDBCBDFFBOOBDDJBBKGGBBBNCBJCBDCCFHHEHHB0CBxBlCBGHBDQBECCBEBDMB7GlBBNDB5BHBLFBpBHBfBBNDBDNBKmBBNuBBCJBC4FB5CHBPxEBhI9fB`,!1)),Hex_Digit:()=>new S(C(`wBJIFbFq1-BJIFbF`,!0)),Lowercase:()=>new S(C(`hDZBwBLLFlBlBBWBCHBC2BCBQCBuBCDECBBBDCCDEEBFFDEEBBBDDDCCCDCCBCCDEECDDBDDBBBHGDCOCBSCBDDCEEC4BCBFBDDDBCCFICBjCBDiBBIBBfEBhDsBsBCEEDDBTccBhBBCBBECBCWCBDBCGDB0B0BBuBBCgBCK0BCDMCBgDCxBoBBo6CqBBCDB5XFBjkCIBC2D2DB+FBiC0ECBHBCgDCBH
10BJFBLHBJHBJFBLHBJHBJNBDHBJHBJHBJEBCBBHEEBBBCBBJDBDBBJHBLCBCBB6DOORMBuDEEBEEcKFDBBJDBFiBiBBOBFsasaBYBn6BvBBCEEBGCFCCBCCBGBEiDCBIICFFNlBBCGG0oesBCUaCBBBmEMCBBBC8BCBIBCCCDICFCCDCCBBBCSCGGGCMCFCCDOCWDBCCCBBB2ZqBBCNBHvCBh6TGBNEBqhBZBumBnBBpEjBB8EKBCOBCGBCBBkODDBBBCpBBCIBmoByBB+DVB75CfBhsVfB8BYBnqZZBbGBCRBbZBbDBCCCBFBCKBbZBbZBbZBbZBbZBbZBbZBbZBbbBdYBCFBbYBCFBbYBCFBbYBCFBbYBCFBC15B15BBIBCTBHFBmI9BB1lChBB`,!1)),Math:()=>new S(C(`rBRRBBBgBeeCuBuBFmBmBgB5W5WBBBDbbBDDBBBwQCBuwGccBBBMEEOPPBCBWEBMEBiCMBFEEBFFBDBTFFDJBCDDBEBHEEBDDBCCBBBCFBENBClClCBWBCFBCBBFBBFfBCHHBPPBqIBJDBVBB7CffBZBCZZMGB+NBBNJBFFBFBBDBBEEBPCCDFBMHBGBB6BCCeDBKCBxK-BBhI-PBxBUBDFB9+zB4Z4ZBEBCjFjFRCBeCCeCCkEHHBCBitDBBhrwBwoBwoBBzCBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBDxBBhwFDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBB-uCIB`,!1)),Quotation_Mark:()=>new S(C(`iBFFkEQQ96HHBaBBowDqOqOBCBOCBixzBDB+FFF7CBB`,!1)),Terminal_Punctuation:()=>new S(C(`hBLLCMMBEE-ZJJiQ6B6BpCPPCCB1FsBsBBJBCsHsHB3B3BBEBCHBgBmImIB1nB1nBBtFtFFFB4JBB2YHBmY9D9DBBBoCBB+ECBEoBoBBCBDBB7JBBjLDBjFBBLBBCCBeCB8FEB-BBBldYYBKKBBBwlDCBzJOOFLLCBBEBBtNBB8ndBBuICBkHEB-LBB3CBBgD4E4EBBB0ECBgERRB6H6HnxUDDB6B6BBBBCDBqFLLCMMBEEiCDD7hBxBxBnkBoGoG3JBB5EFBlCFB6CDB5dEBtBDB+FGBxDDBgECBiEBBHRRB5C5CBDBtDrJrJB2D2DBBBNBBnLDBEOBqDBB6HCBmQCC8HBB4CBBFBB-MCBuBmUmUBrCrCBspBspBBDB6vRBBmEiCiCBBBLqRqRBoJoJBnwTnwTovHDB`,!1)),Uppercase:()=>new S(C(`hCZBmDWBCGBiB2BCDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIJDCMCDQCDDDCCBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBDDBBBEWCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBpCDBNDBNDBNEBMDBnIFFECBDCBDEEBDBHGCBCBDDBLBBGbbBOBUzZzZBYBx5BvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoqZZBbZBbZBbCCBGDBDDBCBCHBbZBbBBCDBDHBCGBcBBCDBCEBCEEBFBcZBbZBbZBbZBbZBbZBfYBiBYBiBYBiBYBiBYBiB2pE2pEBgBBvgCZBHZBHZB`,!1)),White_Space:()=>new S(C(`JEBTlDlDbgvFgvFgsCKBeBBGwBwBh9DAB`,!1))});static get Upper(){return this.CATEGORIES.get(`Lu`)}static SCRIPTS=new Gn({Adlam:()=>new S(C(`go6DrCFJFB`,!0)),Ahom:()=>new S(C(`g4lCaDOFW`,!0)),Anatolian_Hieroglyphs:()=>new S(C(`ggxCmS`,!0)),Arabic:()=>new S(C(`gwBEBCFBCNBCCBCfBCJBMZBCrDBChBBxCvBBxHhBBGqCBCcBxy8BtPBDvEBhBPBxDEBCmEBk7DeBkCFBJIBiBFBh43BDBCaBCBBCDDCJBCDBCCCHFFCECBBBCBBCDDCICBCCDDBCGBCDBCDBCCCBIBCQBGCBCEBCQB1BBB`,!1)),Armenian:()=>new S(C(`xpBlBDxBDCks9BE`,!0)),Avestan:()=>new S(C(`g4iC1BEG`,!0)),Balinese:()=>new S(C(`g4GsCCxB`,!0)),Bamum:()=>new S(C(`g1pB3CpowB4R`,!0)),Bassa_Vah:()=>new S(C(`w26CdDF`,!0)),Batak:()=>new S(C(`g+GzBJD`,!0)),Bengali:()=>new S(C(`gsCDBCHBDBBDVBCGBCEEBCBDIBDBBDDBJFFBCCBDBDYB`,!1)),Beria_Erfe:()=>new S(C(`g17CYDY`,!0)),Bhaiksuki:()=>new S(C(`ggnCICsBCNLc`,!0)),Bopomofo:()=>new S(C(`qXB6wLqBxDf`,!0)),Brahmi:()=>new S(C(`ggkCtCFjBKA`,!0)),Braille:()=>new S(C(`ggK-H`,!0)),Buginese:()=>new S(C(`gwGbDB`,!0)),Buhid:()=>new S(C(`g6FT`,!0)),Canadian_Aboriginal:()=>new S(C(`ggF-TxRlC7tgCP`,!0)),Carian:()=>new S(C(`g1gCwB`,!0)),Caucasian_Albanian:()=>new S(C(`wphCzBMA`,!0)),Chakma:()=>new S(C(`gokC0BCR`,!0)),Cham:()=>new S(C(`gwqB2BKNDJDD`,!0)),Cherokee:()=>new S(C(`g9E1CDFz7lBvC`,!0)),Chorasmian:()=>new S(C(`w9jCb`,!0)),Common:()=>new S(C(`AgCBbFBbuBBCOBCEBYgBgBiOmBBGEBDTB1DKKHCC+THHPEEhB9E9ElQiEiEB6mB6mB2MDBjJwvBwvBBBBoCBBsGBBCumBumBOIIBCBCFBCCBDmYmYBKBD2CBCKBEKBCOBShBB-BlBBCCBDFBCaBCQBqBCBF5UBXKBW-cBhIzTBDpEBhQ9CBzMUBCCCBXBQHBFDB8CBBE7C7CB0E0EBOBhBlBBKxBxBB+BBgBwCBwB5C5CBmFBhuG-BBhoWhBBnDCBmFJB1HhFhFsMPPBzuUzuUBxGxGBIBXiBBCSBCDB0ECCBeBbFBbKBLuBuBBhChCBFBCGBLEBjICBFsBBEIBxCMB0BsBBlHaBltuBDB96D8HBEzNBHWBQQBgDzDB9B1HBLmBBD9BBEQBJBBIdBF8BB2GTBNTBN2CBKYBoE0CBCmCBCBBDDDBDDBCBCLBCCCBFBCgCBCDBDHBCGBCbBCDBCEBCEEBFBCzKBDjJBDxBByjFjCBtC8BBjWrBBFjDBNOBDOBCOBCkBBLtFB5BZBCBBOrBBFIBIBBPFB7E4eBEQBEMBE5GBHLBFQQBKBF3BBJJBHnBBJdBDLBFBBPIBoB3KBJNBDMBEKBE4BBCFFBOBDLBFJBIyEBCmDBnghYffB+CB`,!1)),Coptic:()=>new S(C(`ifNxkKzDGG`,!0)),Cuneiform:()=>new S(C(`ggoC5cnDuDCEMjG`,!0)),Cypriot:()=>new S(C(`ggiCFBDCCBqBBCBBEDD`,!1)),Cypro_Minoan:()=>new S(C(`w8rCiD`,!0)),Cyrillic:()=>
10new S(C(`ggBkEBDoFBx6FKBhFtCtCojEfBhie-CBv8VBBhw4B9BBiBAB`,!1)),Deseret:()=>new S(C(`gghCvC`,!0)),Devanagari:()=>new S(C(`goCwCFODZh7nBfhwcJ`,!0)),Dives_Akuru:()=>new S(C(`gomCGBDDDBGBCBBCdBCBBDLBKJB`,!1)),Dogra:()=>new S(C(`ggmC7B`,!0)),Duployan:()=>new S(C(`ggvDqDGMEIIJDD`,!0)),Egyptian_Hieroglyphs:()=>new S(C(`ggsC1iBL68D`,!0)),Elbasan:()=>new S(C(`gohCnB`,!0)),Elymaic:()=>new S(C(`g-jCW`,!0)),Ethiopic:()=>new S(C(`gwEoCBCDBDGBCCCBCBDoBBCDBDgBBCDBDGBCCCBCBDOBC4BBCDBDiCBDfBEZBnvGWBKGBCGBCGBCGBCGBCGBCGBCGBjpfFBDFBDFBKGBCGBylvCGBCDBCBBCOB`,!1)),Garay:()=>new S(C(`gqjClBEcJB`,!0)),Georgian:()=>new S(C(`glElBBCGGDqBBCDBx8CqBBDCBhiElBBCGG`,!1)),Glagolitic:()=>new S(C(`ggL-Ch9sDGCQDGCBCE`,!0)),Gothic:()=>new S(C(`w5gCa`,!0)),Grantha:()=>new S(C(`g4kCDBCHBDBBDVBCGBCBBCEBDIBDBBDCBDHHGGBDGBEEB`,!1)),Greek:()=>new S(C(`wbDBCCBDDBCFFCCCBBBCCCBSBC+BBPPBnpGEBzBEBFEB1ChKhKBUBDFBDlBBDFBDHBCGCBdBD0BBCOBCNBDFBCSBDCBCIBoJ-xiB-xiB7uVuCBSgj0Bgj0BBkCB`,!1)),Gujarati:()=>new S(C(`h0CCBCIBCCBCVBCGBCBBCEBDJBCCBCCBDQQBCBDLBIGB`,!1)),Gunjala_Gondi:()=>new S(C(`grnCFCBCkBCBCFIJ`,!0)),Gurmukhi:()=>new S(C(`hwCCBCFBFBBDVBCGBCBBCBBCBBDCCBDBFBBDCBEIIBCBCIIBPB`,!1)),Gurung_Khema:()=>new S(C(`go4C5B`,!0)),Han:()=>new S(C(`g0LZBC4CBN1GBwBCCaIBPDBle-tGBhC-vUBhoWtLBDpDBpodBBNGBqgkB-2pBBhB9oEBDt0FBDwpHBQtTBjtC9QBjvBq6EBGppIB`,!1)),Hangul:()=>new S(C(`goE-HvxHBiI9CyDeiCei3dckUj9KNWFwBl9JeEFDFDFDC`,!0)),Hanifi_Rohingya:()=>new S(C(`gojCnBJJ`,!0)),Hanunoo:()=>new S(C(`g5FU`,!0)),Hatran:()=>new S(C(`gniCSCBGE`,!0)),Hebrew:()=>new S(C(`xsB2BBJaBFFBpp9BZBCEBCCCBCCBCCBIB`,!1)),Hiragana:()=>new S(C(`hiM1CBHCBi7-C+IBTeeBBBulQAB`,!1)),Imperial_Aramaic:()=>new S(C(`giiCVCI`,!0)),Inherited:()=>new S(C(`gYvDB2IBBlOKBbhXhXBCB8qEtBBDLBlPCBCMBCGBFHHEBBnG-BBtQBBjGgBB65DDBsDBBmrzBPBRNBwejHjH7iEl+uBl+uBBsBBDWBhRCBSHBDGBfDBz6rYvHB`,!1)),Inscriptional_Pahlavi:()=>new S(C(`g7iCSGH`,!0)),Inscriptional_Parthian:()=>new S(C(`g6iCVDH`,!0)),Javanese:()=>new S(C(`gsqBtCDJFB`,!0)),Kaithi:()=>new S(C(`gkkCiCLA`,!0)),Kannada:()=>new S(C(`gkDMCCCWCJCEDICCCDIBGCCDDJCC`,!0)),Katakana:()=>new S(C(`hlM5CBDCBxHPBxGuBBC3CBvgzBJBCsBBzisBDBCGBCBBCgJgJBBBzBPPBCB`,!1)),Kawi:()=>new S(C(`g4nCQCoBEc`,!0)),Kayah_Li:()=>new S(C(`goqBtBCA`,!0)),Kharoshthi:()=>new S(C(`gwiCDCBGHCCCcDCFJII`,!0)),Khitan_Small_Script:()=>new S(C(`k-7C84G84GB0OBqBAB`,!1)),Khmer:()=>new S(C(`g8F9CDJHJnPf`,!0)),Khojki:()=>new S(C(`gwkCRCuB`,!0)),Khudawadi:()=>new S(C(`w1kC6BGJ`,!0)),Kirat_Rai:()=>new S(C(`gq7C5B`,!0)),Lao:()=>new S(C(`h0DBBCCCBDBCXBCCCBVBDEBCCCBFBCJBDDB`,!1)),Latin:()=>new S(C(`hCZBHZBwBQQGWBCeBCgOBoBEB8wGlBBHwBBGDBGMBClCBiC-HByLOORMBuEBBHccSoBB42CfBj1elDBExCBVOBxZqBBCIBCDB38TGB7gBZBHZBmhCFBCpBBCIBm61BeBHFB`,!1)),Lepcha:()=>new S(C(`ggH3BEOEC`,!0)),Limbu:()=>new S(C(`goGeBCLBFLBFEEBKB`,!1)),Linear_A:()=>new S(C(`gwhC2JKVLH`,!0)),Linear_B:()=>new S(C(`gggCLCZCSCBCODNjB6D`,!0)),Lisu:()=>new S(C(`wmpBvBx1eA`,!0)),Lycian:()=>new S(C(`g0gCc`,!0)),Lydian:()=>new S(C(`gpiCZGA`,!0)),Mahajani:()=>new S(C(`wqkCmB`,!0)),Makasar:()=>new S(C(`g3nCY`,!0)),Malayalam:()=>new S(C(`goDMCCCyBCCCFFPDZ`,!0)),Mandaic:()=>new S(C(`giCbDA`,!0)),Manichaean:()=>new S(C(`g2iCmBFL`,!0)),Marchen:()=>new S(C(`wjnCfDVCN`,!0)),Masaram_Gondi:()=>new S(C(`gonCGBCBBCrBBECCBCCBHBJJB`,!1)),Medefaidrin:()=>new S(C(`gy7C6C`,!0)),Meetei_Mayek:()=>new S(C(`g3qBWqGtBDJ`,!0)),Mende_Kikakui:()=>new S(C(`gg6DkGDP`,!0)),Meroitic_Cursive:()=>new S(C(`gtiCXFTDtB`,!0)),Meroitic_Hieroglyphs:()=>new S(C(`gsiCf`,!0)),Miao:()=>new S(C(`g47CqCF4BIQ`,!0)),Modi:()=>new S(C(`gwlCkCMJ`,!0)),Mongolian:()=>new S(C(`ggGBBDCCBSBH4CBIqBB2t-BMB`,!1)),Mro:()=>new S(C(`gy6CeCJFB`,!0)),Multani:()=>new S(C(`g0kCGBCCCBCBCOBCKB`,!1)),Myanmar:()=>new S(C(`ggE-EhqmBeiDfxibT`,!0)),Nabataean:()=>new S(C(`gkiCeJI`,!0)),Nag_Mundari:()=>new S(C(`wm5DpB`,!0)),Nandinagari:()=>new S(C(`gtmCHDtBDK`,!0)),New_Tai_Lue:()=>new S(C(`gsGrBFZHKEB`,!0)),Newa:()=>new S(C(`gglC7CCE`,!0)),Nko:()=>new S(C(`g+B6BDC`,!0)),Nushu:()=>new S(C(`h-7CvsQvsQBqMB`,!1)),Nyiakeng_Puachue_Hmong:()=>new S(C(`go4DsBENDJFB`,!0)),Ogham:()=>new S(C(`g0Fc`,!0)),Ol_Chiki:()=>new S(C(`wiHvB`,!0)),Ol_Onal:()=>new S(C(`wu5DqBFA`,!0)),Old_Hungarian:()=>new S(C(`gkjCyBOyBIF`,!0)),Old_Italic:()=>new S(C(`g4gCjBKC`,!0)),Old_North_Arabian:()=>new S(C(`g0iCf`,!0)),Old_Permic:()=>new S(C(`w6gCqB`,!0)),Old_Persian:()=>new S(C(`g9gCjBFN`,!0)),Old_Sogdian:()=>new S(C(`g4jCnB`,!0)),Old_South_Arabian:()=>new S(C(`gziCf`,!0)),Old_Turkic:()=>new S(C(`ggjCoC`,!0)),Old_Uyghur:()=>new S(C(`w7jCZ`,!0)),Oriya:()=>new S(C(`h4CCCHDBDVCGCBCEDIDBDCICFBCEDR`,!0)),Osage:()=>new S(C(`wlhCjBFjB`,!0)),Osmanya:()=>new S(C(`gkhCdDJ`,!0)),Pahawh_Hmong:()=>new S(C(`g46ClCLJCGCUGS`,!0)),Palmyrene:()=>new S(C(`gjiCf`,!0)),Pau_Cin_Hau:()=>new S(C(`g2mC4B`,!0)),Phags_Pa:()=>new S(C(`giqB3B`,!0)),Phoenician:()=>new S(C(`goiCbEA`,!0)),Psalter_Pahlavi:()=>new S(C(`g8iCRIDNG`,!0)),Rejang:()=>new S(C(`wpqBjBMA`,!0)),Runic:()=>new S(C(`g1FqCEK`,!0)),Samaritan:()=>new S(C(`ggCtBDO`,!0)),Saurashtra:()=>new S(C(`gkqBlCJL`,!0)),Sharada:()=>new S(C(`gskC-ChsCH`,!0)),Shavian:()=>new S(C(`wihCvB`,!0)),Siddham:()=>new S(C(`gslC1BDlB`,!0)),Sidetic:()=>new S(C(`gqiCZ`,!0)),SignWriting:()=>new S(C(`gg2DrUQECO`,!0)),Sinhala:()=>new S(C(`hsDCBCRBEXBCIBCDDBFBEFFBEBCCCBGBHJBDCBt-gCTB`,!1)),Sogdian:()=>new S(C(`w5jCpB`,!0)),Sora_Sompeng:()=>new S(C(`wmkCYIJ`,!0)),Soyombo:()=>new S(C(`wymCyC`,!0)),Sundanese:()=>new S(C(`g8G-BhIH`,!0)),Sunuwar:()=>new S(C(`g+mChBPJ`,!0)),Syloti_Nagri:()=>new S(C(`ggqBsB`,!0)),Syriac:()=>new S(C(`g4BNC7BDCxIK`,!0)),Tagalog:()=>new S(C(`g4FVKA`,!0)),Tagbanwa:()=>new S(C(`g7FMCCCB`,!0)),Tai_Le:()=>new S(C(`wqGdDE`,!0)),Tai_Tham:()=>new S(C(`gxG+BCcDKHJHN`,!0)),Tai_Viet:()=>new S(C(`g0qBiCZE`,!0)),Tai_Yo:()=>new S(C(`g25DeCVJB`,!0)),Takri:()=>new S(C(`g0lC5BHJ`,!0)),Tamil:()=>new S(C(`i8CBBCFBECBCDBEBBCCCBEEBEEBBBELBFEBECBCDBDHHPUBm+kCxBBOAB`,!1)),Tangsa:()=>new S(C(`wz6CuCCJ`,!0)),Tangut:()=>new S(C(`g-7CgBgBB+3GBhQeBiDyDB`,!1)),Telugu:()=>
10new S(C(`ggDMCCCWCPDICCCDIBCCCBDDDJII`,!0)),Thaana:()=>new S(C(`g8BxB`,!0)),Thai:()=>new S(C(`hwD5BGb`,!0)),Tibetan:()=>new S(C(`g4DnCCjBFmBCjBCOCGFB`,!0)),Tifinagh:()=>new S(C(`wpL3BIBPA`,!0)),Tirhuta:()=>new S(C(`gklCnCJJ`,!0)),Todhri:()=>new S(C(`guhCzB`,!0)),Tolong_Siki:()=>new S(C(`wtnCrBFJ`,!0)),Toto:()=>new S(C(`w04De`,!0)),Tulu_Tigalari:()=>new S(C(`g8kCJBCDDClBBCJBCDDCDBCJBCBBJBB`,!1)),Ugaritic:()=>new S(C(`g8gCdCA`,!0)),Unknown:()=>new S(C(`4bBBHDBICCVuMuMnBBBzBBBE4B4BBGBcDBHKBvI9B9BBmDmDBMB8BBByBBBQddBCCMEBjBEBuHJJBDDBXXICCBBBFBBKBBDBBFHBCDBDGGBaaBEEHDBDBBXIIDGDBCCGDBDBBECBCGBFCCBFBSJBEKKEXXIDDGBBLIEBCCBNBFBBNGBIEEJBBDBBXIIDGGBKKBDDBEEBFBEDBDGGBTTBIBDHHBBBEFFBBBDCCDCBDCBECBNDBGCBEFFBCCBEBCNBWEBOEEYRRBKKEFFBFBDEEDBBFBBLGBXEEYLLGBBKEEFGBDEBEFFBLLELBOEE0BEEHDBRBBbEETCBZKKCBBICBCDBHCCJFBLBBELB7BDBekBBDCCGZZCYYBGGCIILBBFfBpClBlBBCBoBlBlBQOOBjBBnGCCBDBCBB6LFFBIICFFBqBqBFBBiBFFBIICFFBQQ6BFFBkCkCBhBhBBBBbFB3CBBHBB+UCB6CGBXIBZIBVLBOEEDLB-CBBLFBLFBbFB6CGBsBEBnCJBgBNNBCBNDBCCBrBBBGKBtBDBbFBMCB-BBBiCeeBMMBEBLFBPBBvBBBNTBuCnFnFBGB9BCBQCB-BEBsBBBMHBsBEB3QBBHBBnBBBHBBJGCgBBB2BQQPBBHUUBEEKmDmDNBBcOOBBBjBNBiBOBtEDB7UVBMUB14BBB-LEBuBCCBDBCBB5BGBDNBZIBI4BI-DhBBb6C6CBKB3GZBxC3C3CBoDoDBDBsB-C-C3CIBxBuzcuzcBBB4BIB9KTB5FHB+GTB9BCBLFB5BHBnCHBNFB1DKBfCBvCMMBCBiB4B4BBHBPBBLBBoDXBdJBHBBHBBHIBIII9BDB-DBBLFBl9KLBYDByBjoIBvLBBrDlBBILBGEBbGGCGDrUfBrBFB0BUUFDBGoEoEBCC-FCBHBBHBBHBBECBIIIBIBGBBNbbUDDQBBPhBB8DEBEDBuBCB5COOBBBCuBBvBhEBeCByBOBdDBlBIBfEBsBEBfmBmBBCBPpBB-EBBLFBlBDBlBDBpBHB1BKBNQQIDDMQQIDDBBB1BLB4JIBXJBJXBHrBrBKkCBHBBCtBtBDCBCBBYpCpCBGBKvBBUDDBDBiBCBcEBclBB5BDBVBBzBDDBDBJEEeBBEDBLGBKGBhCfBoBDBNIB3BCBeBBcEBbGBFLBIvCBqC2BB0BMB0BGBvBHBLFBnBCBeHBDvGBgBrBrBEBBDPBHHBKgBBvBHBrBVBblBBdTBYIBvCDBlBIBlCJBCBBaGBLFB2BTTBGBoBIBhDVVBJBTwBwBB8BBICCFQQMFB8BEBLFBFJJBDDBXXIDDGLLBDDBEEBCCBEBCEBIBBICBGKBLCCBCCnBLLCBBCFFLDDBGBDcB9CGGBcBpCHBLlFB3BBBnBhBBmCKBLFBOSB7BFBLFBVbBcBBQDBY4FB9BjDB0CLBJBBCBBJDDfDDBNNBHBLlCBJBBvBBBMaBpCHB0CMBqCGBL1CBJ3CBjBNBLFBKuBuBPJBeCBhBBBXPPBnCBIDDtBCBCDDKHBLFBHDDmBDDHGBLFBtBDBL1HBaGBSqBqBBBBe0CBCOBzBMB8clDBwDGGBJBlGryCBkDMB3iBJB88DEBoS41GB7Bl2BB6RGBgBLLBCByCLLBEBfBBHJBnCJBLIIWEBUvNB7BlGB8CEBaBBarBBsCDB6BGBS-BBGKBIIB3mHoBBhBgDB0D8vIBFIIDkJkJBNBCcBEBBCNBFHBtMjoCBsDEBOCBKGBLBBJ76DB+HCB1NFBYOBSOBvBBBYIB1D7BB3HJBoBBBjGUBnC5DBVLBVLB4CIBamEB2CoCoCDBBCBBDBBFNNCIIiCFFBJJIddFGGCCBI1K1KBlJlJB-V-VBNBGQQBuiBBgBFBH0GBISSBIIDGGBDB-BgBBCvDBuBCBPBBLDBD-JBgBQB7BEBCvOBrB1GBsBDBC-FBgBXXBGBD-GBIFFDQQmGBBRoBBtCDBLDBDwYBlCrCB+BhGBFccDCCBCCLFFCCCBEBCDBCECEDDCBBCICDCCBFFIKFCLLSEBEGGSzBBDtIBtBDBlDLBQBBQQQmBJBvF3BBeMBtBDBKGBDNBH5EB6eCBSCBOCB7GFBNDBCOBNDB5BHBLFBpBHBfBBNDBDNBKmBB5KHBPBBOCBMCB6BCCBCBRBBND
10BLGB0EoDoDBjgBBh3pBfB-oEBBv0FBBypHOBvThtCB-QhvBBs6EEBrpIm8yVBCdBhD-DBxHvw-FB`,!1)),Vai:()=>new S(C(`gopBrJ`,!0)),Vithkuqi:()=>new S(C(`wrhCKCOCGCBCKCOCGCB`,!0)),Wancho:()=>new S(C(`g24D5BGA`,!0)),Warang_Citi:()=>new S(C(`glmCyCNA`,!0)),Yezidi:()=>new S(C(`g0jCpBCCDB`,!0)),Yi:()=>new S(C(`ggoBskBE2B`,!0)),Zanabazar_Square:()=>new S(C(`gwmCnC`,!0))});static FOLD_CATEGORIES=new Gn({L:()=>new S(C(`laA`,!0)),LC:()=>new S(C(`laA`,!0)),Ll:()=>new S(C(`hCZBmDWBCGBiBuBCEECDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIBBCBBCBBCOCDQCDBBCCCBBBC4BCIBBCBBDCCBCBCGC3HrBrBCEEJHHCCBCCCBCCBPBCIBkBJJCUCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBZHBJHBJHBJEBMEBMDBNEBMEBqJEEBHHxC9zC9zCBuBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoyehBB`,!1)),Lt:()=>new S(C(`kOCCBCCBCClBCCtsHHBJHBJHBMQQwBAB`,!1)),Lu:()=>new S(C(`hDZB7BqBqBBWBCHBCuBCEECDOCDsBCDECBBBDCCDEEGDDECBDDDCCCDFFDEECDDECCGBBCBBCBBCOCBSCDBBCEECkBCEQCJDDBCCFICBEBCBBCCCBEEBCCBCBCEBDCCBDDIDDCBBEFBGLLBnFnFsBCCEEEBBBvBDBCdBCBBECBCWCBDBCGD1BvBBCgBCK0BCDMCBgDCyBlBBq6CqBBDCB5XFBjkCIBCvHvHERRzD0ECGGGC8CCBHBJFBLHBJHBJFBMGCJHBJNBzBBBNSSBPPBEEpL2B2Bs1CvBBCEEBGCHDDLiDCJCCFNNBkBBCGG0oesBCUaCoEMCE8BCLCCDICFFFCBBDSCMOCFCCDOCb9a9advCBi8UZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBvyehBB`,!1)),M:()=>new S(C(`5cgBgBlgHAB`,!1)),Mn:()=>new S(C(`5cgBgBlgHAB`,!1)),Emoji:()=>new S(C(`8mJA`,!0)),Extended_Pictographic:()=>new S(C(`8mJA`,!0)),Lowercase:()=>new S(C(`hCZBmDWBCGBiBuBCEECDOCDuBCBECEBBCCCBCCBBBDDBCBBCCBEBBCBBCECBCCDCCBCCBBBCCCBEEIBBCBBCBBCOCDQCDBBCCCBBBC4BCIBBCBBDCCBCBCGCiJCCEJJHCCBBBCCCBCCBPBCIBkBJJCUCGDDCBBDyBBxBgBCK2BCBMCD+CCDlBBq6ClBBCGGzW1CB0kCHHBpBBDCBhK0ECKgDCKHBJFBLHBJHBJFBMGCJHBZHBJHBJHBJEBMEBMDBNEBMEBqJEEBHHuBPBUzZzZBYBx5BvBBxBCCBBBDGCBCBCDDJCBCgDCJCCFuqeuqeCqBCUaCoEMCE8BCLECBICFCCDCCEUCBDBCEBCOCBCBCCCBQCZs5Vs5VBYBmmBnBBpEjBB9EKBCOBCGBCBBr3ByBB+EVB75CfBhsVfBhCYBoyehBB`,!1)),Math:()=>new S(C(`ycGDCHHFMMDDDCHHFAB`,!1)),Uppercase:()=>new S(C(`hDZB7BqBqBBWBCHBCuBCEECDOCDsBCDECBBBDCCDEEGDDECBDDDCCCDFFDEECDDECCGBBCBBCBBCOCBSCDBBCEECkBCEQCJDDBCCFICBEBCBBCCCBEEBCCBCBCEBDCCBDDIDDCBBEFBGLLBnFnFsBCCEEEBBBvBDBCdBCBBECBCWCBDBCGD1BvBBCgBCK0BCDMCBgDCyBlBBq6CqBBDCB5XFBjkCIBCvHvHERRzD0ECGGGC8CCBHBJFBLHBJHBJFBMGCJHBJNBzBBBNSSBPPBEEpLiBiBBOBFsasaBYBn6BvBBCEEBGCHDDLiDCJCCFNNBkBBCGG0oesBCUaCoEMCE8BCLCCDICFFFCBBDSCMOCFCCDOCb9a9advCBi8UZBumBnBBpEjBB8EKBCOBCGBCBBk4ByBB+DVB75CfBhsVfB8BYBvyehBB`,!1))});static FOLD_SCRIPT=new Gn({Common:()=>new S(C(`8cgBgB`,!1)),Greek:()=>new S(C(`1FwUwU`,!1)),Inherited:()=>new S(C(`5cgBgBlgHAB`,!1))})},w=class e{static MAX_RUNE=1114111;static MAX_ASCII=127;static MAX_LATIN1=255;static MAX_BMP=65535;static MIN_FOLD=65;static MAX_FOLD=125251;static MIN_HIGH_SURROGATE=55296;static MAX_HIGH_SURROGATE=56319;static MIN_LOW_SURROGATE=56320;static MAX_LOW_SURROGATE=57343;static MIN_SUPPLEMENTARY_CODE_POINT=65536;static is32(e,t){let n=0,r=e.length;for(;n<r;){let i=n+Math.floor((r-n)/2),a=e.getLo(i),o=e.getHi(i);if(a<=t&&t<=o){let n=e.getStride(i);return(t-a)%n===0}t<a?r=i:n=i+1}return!1}static is(t,n){if(n<=e.MAX_LATIN1){for(let e=0;e<t.length;e++){if(n>t.getHi(e))continue;let r=t.getLo(e);if(n<r)return!1;let i=t.getStride(e);return(n-r)%i===0}return!1}return t.length>0&&n>=t.getLo(0)&&e.is32(t,n)}static isUpper(t){if(t<=e.MAX_LATIN1){let e=String.fromCodePoint(t);return e.toUpperCase()===e&&e.toLowerCase()!==e}return e.is(Kn.Upper,t)}static isPrint(t){return t<=e.MAX_LATIN1?t>=32&&t<e.MAX_ASCII||t>=161&&t!==173:e.is(Kn.Print,t)}static simpleFold(e){if(Kn.CASE_ORBIT.has(e))return Kn.CASE_ORBIT.get(e);let t=x.toLowerCase(e);return t===e?x.toUpperCase(e):t}static equalsIgnoreCase(t,n){if(t===n)return!0;if(t<0||n<0)return!1;if(t<=e.MAX_ASCII&&n<=e.MAX_ASCII)return 65<=t&&t<=90&&(t|=32),65<=n&&n<=90&&(n|=32),t===n;for(let r=e.simpleFold(t);r!==t;r=e.simpleFold(r))if(r===n)return!0;return!1}},qn=256,Jn=new Uint8Array(qn);for(let e=0;e<qn;e++)Jn[e]=+(97<=e&&e<=122||65<=e&&e<=90||48<=e&&e<=57||e===95);var Yn=null,Xn=null,T=class e{static METACHARACTERS=`\\.+*?()|[]{}^$`;static EMPTY_BEGIN_LINE=1;static EMPTY_END_LINE=2;static EMPTY_BEGIN_TEXT=4;static EMPTY_END_TEXT=8;static EMPTY_WORD_BOUNDARY=16;static EMPTY_NO_WORD_BOUNDARY=32;static EMPTY_ALL=-1;static emptyInts(){return[]}static isByteArray(e){return Array.isArray(e)||e instanceof Uint8Array}static isalnum(e){return x.CODES.get(`0`)<=e&&e<=x.CODES.get(`9`)||x.CODES.get(`a`)<=e&&e<=x.CODES.get(`z`)||x.CODES.get(`A`)<=e&&e<=x.CODES.get(`Z`)}static unhex(e){return x.CODES.get(`0`)<=e&&e<=x.CODES.get(`9`)?e-x.CODES.get(`0`):x.CODES.get(`a`)<=e&&e<=x.CODES.get(`f`)?e-
10x.CODES.get(`a`)+10:x.CODES.get(`A`)<=e&&e<=x.CODES.get(`F`)?e-x.CODES.get(`A`)+10:-1}static escapeRune(t){let n=``;if(w.isPrint(t))e.METACHARACTERS.indexOf(String.fromCodePoint(t))>=0&&(n+=`\\`),n+=String.fromCodePoint(t);else switch(t){case x.CODES.get(`"`):n+=`\\"`;break;case x.CODES.get(`\\`):n+=`\\\\`;break;case x.CODES.get(`	`):n+=`\\t`;break;case x.CODES.get(`
11`):n+=`\\n`;break;case x.CODES.get(`\r`):n+=`\\r`;break;case x.CODES.get(`\b`):n+=`\\b`;break;case x.CODES.get(`\f`):n+=`\\f`;break;default:{let e=t.toString(16);t<256?(n+=`\\x`,e.length===1&&(n+=`0`),n+=e):n+=`\\x{${e}}`;break}}return n}static stringToRunes(e){let t=String(e),n=[],r=0;for(;r<t.length;){let e=t.codePointAt(r);n.push(e),r+=e>w.MAX_BMP?2:1}return n}static runeToString(e){return String.fromCodePoint(e)}static isWordRune(e){return e<qn&&Jn[e]===1}static emptyOpContext(t,n){let r=0;return t<0&&(r|=e.EMPTY_BEGIN_TEXT|e.EMPTY_BEGIN_LINE),t===10&&(r|=e.EMPTY_BEGIN_LINE),n<0&&(r|=e.EMPTY_END_TEXT|e.EMPTY_END_LINE),n===10&&(r|=e.EMPTY_END_LINE),e.isWordRune(t)===e.isWordRune(n)?r|=e.EMPTY_NO_WORD_BOUNDARY:r|=e.EMPTY_WORD_BOUNDARY,r}static quoteMeta(t){return t.split(``).map(t=>e.METACHARACTERS.indexOf(t)>=0?`\\${t}`:t).join(``)}static charCount(e){return e>w.MAX_BMP?2:1}static toArray(e){let t=e.length,n=Array(t);for(let r=0;r<t;r++)n[r]=e[r];return n}static stringToUtf8ByteArray(e){if(globalThis.TextEncoder)return Yn||=new TextEncoder,Yn.encode(e);{let t=[],n=0;for(let r=0;r<e.length;r++){let i=e.charCodeAt(r);i<128?t[n++]=i:i<2048?(t[n++]=i>>6|192,t[n++]=i&63|128):(i&64512)===w.MIN_HIGH_SURROGATE&&r+1<e.length&&(e.charCodeAt(r+1)&64512)===w.MIN_LOW_SURROGATE?(i=w.MIN_SUPPLEMENTARY_CODE_POINT+((i&1023)<<10)+(e.charCodeAt(++r)&1023),t[n++]=i>>18|240,t[n++]=i>>12&63|128,t[n++]=i>>6&63|128,t[n++]=i&63|128):(t[n++]=i>>12|224,t[n++]=i>>6&63|128,t[n++]=i&63|128)}return t}}static utf8ByteArrayToString(e){if(globalThis.TextDecoder){Xn||=new TextDecoder(`utf-8`);let t=e instanceof Uint8Array?e:new Uint8Array(e);return Xn.decode(t)}{let t=[],n=0,r=0;for(;n<e.length;){let i=e[n++];if(i<128)t[r++]=String.fromCharCode(i);else if(i>191&&i<224){let a=e[n++];t[r++]=String.fromCharCode((i&31)<<6|a&63)}else if(i>239&&i<365){let a=e[n++],o=e[n++],s=e[n++],c=((i&7)<<18|(a&63)<<12|(o&63)<<6|s&63)-w.MIN_SUPPLEMENTARY_CODE_POINT;t[r++]=String.fromCharCode(w.MIN_HIGH_SURROGATE+(c>>10)),t[r++]=String.fromCharCode(w.MIN_LOW_SURROGATE+(c&1023))}else{let a=e[n++],o=e[n++];t[r++]=String.fromCharCode((i&15)<<12|(a&63)<<6|o&63)}}return t.join(``)}}},Zn=(e=[],t=0)=>{let n=Object.create(null);for(let r=0;r<e.length;r++){let i=e[r],a=t+r;n[i]=a,n[a]=i}return Object.freeze(n)},Qn=class e{static Encoding=Zn([`UTF_16`,`UTF_8`]);getEncoding(){throw Error(`not implemented`)}asCharSequence(){throw Error(`not implemented`)}asBytes(){throw Error(`not implemented`)}length(){throw Error(`not implemented`)}isUTF8Encoding(){return this.getEncoding()===e.Encoding.UTF_8}isUTF16Encoding(){return this.getEncoding()===e.Encoding.UTF_16}},$n=class extends Qn{constructor(e=null){super(),this.bytes=e}getEncoding(){return Qn.Encoding.UTF_8}asCharSequence(){return T.utf8ByteArrayToString(this.bytes)}asBytes(){return this.bytes}length(){return this.bytes.length}},er=class extends Qn{constructor(e=null){super(),this.charSequence=e}getEncoding(){return Qn.Encoding.UTF_16}asCharSequence(){return this.charSequence}asBytes(){return T.stringToUtf8ByteArray(this.charSequence.toString())}length(){return this.charSequence.length}},tr=class{static utf16(e){return new er(e)}static utf8(e){return T.isByteArray(e)?new $n(e):new $n(T.stringToUtf8ByteArray(e))}},nr=class{static EOF(){return-8}constructor(){this.end=0}canCheckPrefix(){return!0}endPos(){return this.end}hasString(){return!1}hasAnyString(){return!1}prefixLength(){return 0}},rr=class extends nr{constructor(e,t=0,n=e.length){super(),this.bytes=e,this.start=t,this.end=n}hasString(e,t){let n=e.bytes;if(n.length===0)return!0;let r=this.indexOf(this.bytes,n,this.start+t);return r!==-1&&r<=this.end-n.length}hasAnyString(e,t){return e.ac8?e.ac8.searchUTF8(this.bytes,this.start+t,this.end):!1}step(e){if(e+=this.start,e>=this.end)return nr.EOF();let t=this.bytes[e]&255;if(t<128)return t<<3|1;if(t>=194&&t<=223&&e+1<this.end){let n=this.bytes[e+1]&255;return(n&192)==128?((t&31)<<6|n&63)<<3|2:t<<3|1}if(t>=224&&t<=239&&e+2<this.end){let n=this.bytes[e+1]&255;if((n&192)!=128)return t<<3|1;let r=this.bytes[e+2]&255;
11return(r&192)==128?((t&15)<<12|(n&63)<<6|r&63)<<3|3:t<<3|1}if(t>=240&&t<=244&&e+3<this.end){let n=this.bytes[e+1]&255;if((n&192)!=128)return t<<3|1;let r=this.bytes[e+2]&255;if((r&192)!=128)return t<<3|1;let i=this.bytes[e+3]&255;return(i&192)==128?((t&7)<<18|(n&63)<<12|(r&63)<<6|i&63)<<3|4:t<<3|1}return t<<3|1}index(e,t){t+=this.start;let n=this.indexOf(this.bytes,e.prefixUTF8,t);return n<0?n:n-t}context(e){e+=this.start;let t=-1;if(e>this.start&&e<=this.end){let n=e-1;if(t=this.bytes[n--],t>=128){let r=e-4;for(r<this.start&&(r=this.start);n>=r&&(this.bytes[n]&192)==128;)n--;n<this.start&&(n=this.start),t=this.step(n-this.start)>>3}}let n=e<this.end?this.step(e-this.start)>>3:-1;return T.emptyOpContext(t,n)}indexOf(e,t,n=0){let r=t.length;if(r===0)return n<=this.end?n:-1;let i=t[0],a=this.end-r,o=typeof e.indexOf==`function`,s=n;for(;s<=a;){if(o){if(s=e.indexOf(i,s),s===-1||s>a)return-1}else{for(;s<=a&&e[s]!==i;)s++;if(s>a)return-1}let n=!0;for(let i=1;i<r;i++)if(e[s+i]!==t[i]){n=!1;break}if(n)return s;s++}return-1}prefixLength(e){return e.prefixUTF8.length}},ir=class extends nr{constructor(e,t=0,n=e.length){super(),this.charSequence=e,this.start=t,this.end=n}hasString(e,t){let n=this.charSequence.indexOf(e.str,this.start+t);return n!==-1&&n<=this.end-e.str.length}hasAnyString(e,t){return e.ac16?e.ac16.searchUTF16(this.charSequence,this.start+t,this.end):!1}step(e){if(e+=this.start,e>=this.end)return nr.EOF();let t=this.charSequence.charCodeAt(e);if(t<w.MIN_HIGH_SURROGATE||t>w.MAX_HIGH_SURROGATE||e+1>=this.end)return t<<3|1;let n=this.charSequence.charCodeAt(e+1);return n>=w.MIN_LOW_SURROGATE&&n<=w.MAX_LOW_SURROGATE?(t-w.MIN_HIGH_SURROGATE)*1024+(n-w.MIN_LOW_SURROGATE)+w.MIN_SUPPLEMENTARY_CODE_POINT<<3|2:t<<3|1}index(e,t){t+=this.start;let n=this.charSequence.indexOf(e.prefix,t);return n<0||n>this.end-e.prefix.length?-1:n-t}context(e){e+=this.start;let t=e>this.start&&e<=this.end?this.charSequence.charCodeAt(e-1):-1,n=e<this.end?this.charSequence.charCodeAt(e):-1;return T.emptyOpContext(t,n)}prefixLength(e){return e.prefix.length}},E=class{static fromUTF8(e,t=0,n=e.length){return new rr(e,t,n)}static fromUTF16(e,t=0,n=e.length){return new ir(e,t,n)}},ar=class extends Error{constructor(e){super(e),this.name=`RE2JSException`}},D=class extends ar{constructor(e,t=null){let n=`error parsing regexp: ${e}`;t&&(n+=`: \`${t}\``),super(n),this.name=`RE2JSSyntaxException`,this.message=n,this.error=e,this.input=t}getDescription(){return this.error}getPattern(){return this.input}},or=class extends ar{constructor(e){super(e),this.name=`RE2JSCompileException`}},sr=class extends ar{constructor(e){super(e),this.name=`RE2JSGroupException`}},cr=class extends ar{constructor(e){super(e),this.name=`RE2JSFlagsException`}},lr=class extends ar{constructor(e){super(e),this.name=`RE2JSInternalException`}},ur=class e{static MAX_REPLACER_ARGS=65535;static quoteReplacement(e,t=!1){return t?e.indexOf(`\\`)<0&&e.indexOf(`$`)<0?e:e.split(``).map(e=>{let t=e.codePointAt(0);return t===x.CODES.get(`\\`)||t===x.CODES.get(`$`)?`\\${e}`:e}).join(``):e.indexOf(`$`)<0?e:e.split(``).map(e=>e.codePointAt(0)===x.CODES.get(`$`)?`$$`:e).join(``)}constructor(e,t){if(e===null)throw Error(`pattern is null`);this.patternInput=e;let n=this.patternInput.re2();this.patternGroupCount=n.numberOfCapturingGroups(),this.groups=[],this.namedGroups=n.namedGroups,this.numberOfInstructions=n.numberOfInstructions(),t instanceof Qn?this.resetMatcherInput(t):T.isByteArray(t)?this.resetMatcherInput(tr.utf8(t)):this.resetMatcherInput(tr.utf16(t))}pattern(){return this.patternInput}reset(){return this.matcherInputLength=this.matcherInput.length(),this.appendPos=0,this.hasMatch=!1,this.hasGroups=!1,this.anchorFlag=0,this}resetMatcherInput(e){if(e===null)throw Error(`input is null`);return e instanceof Qn||(e=T.isByteArray(e)?tr.utf8(e):tr.utf16(e)),this.matcherInput=e,this.reset(),this}start(e=0){if(typeof e==`string`){let t=this.namedGroups[e];if(!Number.isFinite(t))throw new sr(`group '${e}' not found`);e=t}return this.loadGroup(e),this.groups[2*e]}end(e=0){if(typeof e==`string`){let t=this.namedGroups[e];if(!Number.isFinite(t))throw new sr(`group '${e}' not found`);e=t}return this.loadGroup(e),this.groups[2*e+1]}
11programSize(){return this.numberOfInstructions}group(e=0){if(typeof e==`string`){let t=this.namedGroups[e];if(!Number.isFinite(t))throw new sr(`group '${e}' not found`);e=t}let t=this.start(e),n=this.end(e);return t<0&&n<0?null:this.substring(t,n)}getNamedGroups(){if(!this.hasMatch)throw new sr(`perhaps no match attempted`);let e=Object.create(null);for(let t of Object.keys(this.namedGroups))e[t]=this.group(t);return e}groupCount(){return this.patternGroupCount}loadGroup(e){if(e<0||e>this.patternGroupCount)throw new sr(`Group index out of bounds: ${e}`);if(!this.hasMatch)throw new sr(`perhaps no match attempted`);if(e===0||this.hasGroups)return;let t=this.matcherInputLength,n=this.patternInput.re2().matchMachineInput(this.matcherInput,this.groups[0],t,this.anchorFlag,1+this.patternGroupCount);if(!n[0])throw new sr(`inconsistency in matching group data`);this.groups=n[1],this.hasGroups=!0}matches(){return this.genMatch(0,b.ANCHOR_BOTH)}lookingAt(){return this.genMatch(0,b.ANCHOR_START)}find(e=null){if(e!==null){if(e<0||e>this.matcherInputLength)throw new sr(`start index out of bounds: ${e}`);return this.reset(),this.genMatch(e,0)}if(e=0,this.hasMatch&&(e=this.groups[1],this.groups[0]===this.groups[1])){let t=(this.matcherInput.isUTF16Encoding()?E.fromUTF16(this.matcherInput.asCharSequence(),0,this.matcherInputLength):E.fromUTF8(this.matcherInput.asBytes(),0,this.matcherInputLength)).step(e);t<0?e++:e+=t&7}return this.genMatch(e,b.UNANCHORED)}genMatch(e,t){let n=this.patternInput.re2().matchMachineInput(this.matcherInput,e,this.matcherInputLength,t,1);return n[0]?(this.groups=n[1],this.hasMatch=!0,this.hasGroups=this.patternGroupCount===0,this.anchorFlag=t,!0):(this.hasMatch=!1,!1)}substring(e,t){return this.matcherInput.isUTF8Encoding()?T.utf8ByteArrayToString(this.matcherInput.asBytes().slice(e,t)):this.matcherInput.asCharSequence().substring(e,t).toString()}inputLength(){return this.matcherInputLength}appendReplacement(e,t=!1){let n=``,r=this.start(),i=this.end();return this.appendPos<r&&(n+=this.substring(this.appendPos,r)),this.appendPos=i,n+=t?this.appendReplacementInternalJava(e):this.appendReplacementInternalJs(e),n}appendReplacementInternalJava(e){let t=``,n=0,r=e.length,i=0;for(;i<r;){let a=e.codePointAt(i);if(a===x.CODES.get(`\\`)){if(n<i&&(t+=e.substring(n,i)),i++,i>=r)throw new sr(`character to be escaped is missing`);n=i,i++;continue}if(a===x.CODES.get(`$`)){if(n<i&&(t+=e.substring(n,i)),i+1>=r)throw new sr(`Illegal group reference: group index is missing`);let a=e.codePointAt(i+1);if(x.CODES.get(`0`)<=a&&a<=x.CODES.get(`9`)){let o=a-x.CODES.get(`0`),s=i+2;for(;s<r;s++){let t=e.codePointAt(s);if(t<x.CODES.get(`0`)||t>
11x.CODES.get(`9`)||o*10+t-x.CODES.get(`0`)>this.patternGroupCount)break;o=o*10+t-x.CODES.get(`0`)}if(o>this.patternGroupCount)throw new sr(`n > number of groups: ${o}`);let c=this.group(o);c!==null&&(t+=c),i=s,n=i}else if(a===x.CODES.get(`{`)){let a=i+2;for(;a<r&&e.codePointAt(a)!==x.CODES.get(`}`);)a++;if(a>=r)throw new sr(`named capture group is missing trailing '}'`);let o=e.substring(i+2,a),s=this.group(o);s!==null&&(t+=s),i=a+1,n=i}else throw new sr(`Illegal group reference`);continue}i++}return n<r&&(t+=e.substring(n,r)),t}appendReplacementInternalJs(e){let t=``,n=0,r=e.length;for(let i=0;i<r-1;i++)if(e.codePointAt(i)===x.CODES.get(`$`)){let a=e.codePointAt(i+1);if(x.CODES.get(`$`)===a){n<i&&(t+=e.substring(n,i)),t+=`$`,i++,n=i+1;continue}if(x.CODES.get(`&`)===a){n<i&&(t+=e.substring(n,i));let r=this.group(0);t+=r===null?`$&`:r,i++,n=i+1;continue}if(x.CODES.get("`")===a){n<i&&(t+=e.substring(n,i)),t+=this.substring(0,this.start(0)),i++,n=i+1;continue}if(x.CODES.get(`'`)===a){n<i&&(t+=e.substring(n,i)),t+=this.substring(this.end(0),this.matcherInputLength),i++,n=i+1;continue}if(x.CODES.get(`1`)<=a&&a<=x.CODES.get(`9`)){let o=a-x.CODES.get(`0`);for(n<i&&(t+=e.substring(n,i)),i+=2;i<r&&(a=e.codePointAt(i),!(a<x.CODES.get(`0`)||a>x.CODES.get(`9`)||o*10+a-x.CODES.get(`0`)>this.patternGroupCount));i++)o=o*10+a-x.CODES.get(`0`);if(o>this.patternGroupCount){t+=`$${o}`,n=i,i--;continue}let s=this.group(o);s!==null&&(t+=s),n=i,i--;continue}if(a===x.CODES.get(`<`)){n<i&&(t+=e.substring(n,i)),i++;let r=i+1;for(;r<e.length&&e.codePointAt(r)!==x.CODES.get(`>`)&&e.codePointAt(r)!==x.CODES.get(` `);)r++;if(r===e.length||e.codePointAt(r)!==x.CODES.get(`>`)){t+=e.substring(i-1,r+1),n=r+1,i=r;continue}let a=e.substring(i+1,r);if(Object.prototype.hasOwnProperty.call(this.namedGroups,a)){let e=this.group(a);e!==null&&(t+=e)}else t+=`$<${a}>`;n=r+1,i=r;continue}}return n<r&&(t+=e.substring(n,r)),t}appendTail(){return this.substring(this.appendPos,this.matcherInputLength)}replaceAll(e,t=!1){return this.replace(e,!0,t)}replaceFirst(e,t=!1){return this.replace(e,!1,t)}replace(t,n=!0,r=!1){let i=``;this.reset();let a=typeof t==`function`,o=Object.keys(this.namedGroups).length>0,s=null;if(a){if(this.groupCount()>=e.MAX_REPLACER_ARGS)throw new sr(`Too many capture groups to safely invoke replacer function`);s=this.matcherInput.isUTF8Encoding()?this.matcherInput.asBytes():this.matcherInput.asCharSequence()}for(;this.find()&&(i+=a?this.appendReplacementFunc(t,o,s):this.appendReplacement(t,r),n););return i+=this.appendTail(),i}appendReplacementFunc(e,t,n){let r=``,i=this.start(),a=this.end();this.appendPos<i&&(r+=this.substring(this.appendPos,i)),this.appendPos=a;let o=this.buildReplacerArgs(i,t,n);return r+=String(e(...o)),r}buildReplacerArgs(e,t,n){let r=[this.group(0)],i=this.groupCount();for(let e=1;e<=i;e++){let t=this.start(e);t<0?r.push(void 0):r.push(this.substring(t,this.end(e)))}if(r.push(e),r.push(n),t){let e=this.getNamedGroups();for(let t in e)e[t]===null&&(e[t]=void 0);r.push(e)}return r}},O=class e{static ALT=1;static ALT_MATCH=2;static CAPTURE=3;static EMPTY_WIDTH=4;static FAIL=5;static MATCH=6;static NOP=7;static RUNE=8;static RUNE1=9;static RUNE_ANY=10;static RUNE_ANY_NOT_NL=11;static LB_WRITE=12;static LB_CHECK=13;static isRuneOp(t){return e.RUNE<=t&&t<=e.RUNE_ANY_NOT_NL}static escapeRunes(e){let t=`"`;for(let n of e)t+=T.escapeRune(n);return t+=`"`,t}constructor(e){this.op=e,this.out=0,this.arg=0,this.runes=[],this.next=null}matchRune(e){if(this.runes.length===1){let t=this.runes[0];return(this.arg&b.FOLD_CASE)===0?e===t:w.equalsIgnoreCase(t,e)}let t=this.runes.length;if(t===0)return!1;if(t===2||t===4||t===6||t===8){for(let n=0;n<t;n+=2){if(e<this.runes[n])return!1;if(e<=this.runes[n+1])return!0}return!1}let n=0,r=t>>1;for(;r>1;){let t=r>>1;n+=this.runes[n+t<<1]<=e?t:0,r-=t}n+=+(this.runes[n<<1]<=e);let i=n-1;return i>=0&&e<=this.runes[i<<1|1]}matchRunePos(e){if(this.runes.length===1){let t=this.runes[0];return(this.arg&b.FOLD_CASE)===0?e===t?0:-1:w.equalsIgnoreCase(t,e)?0:-1}let t=this.runes.length;if(t===0)return-1;if(t===2||t===4||t===6||t===8){for(let n=0;n<t;n+=2){if(e<this.runes[n])return-1;if(e<=this.runes[n+1])return Math.floor(n/2)}return-1}let n=0,r=t>>1;for(;r>1;){let t=r>>1;n+=this.runes[n+t<<1]<=e?t:0,r-=t}n+=+(this.runes[n<<1]<=e);let i=n-1;return i>=0&&e<=this.runes[i<<1|1]?i:-1}toString(){switch(this.op){case e.ALT:return`alt -> ${this.out}, ${this.arg}`;case e.ALT_MATCH:return`altmatch -> ${this.out}, ${this.arg}`;case e.CAPTURE:return`cap ${this.arg} -> ${this.out}`;case e.EMPTY_WIDTH:return`empty ${this.arg} -> ${this.out}`;case e.MATCH:return`match${this.arg===0?``:` ${this.arg}`}`;case e.FAIL:return`fail`;case e.NOP:return`nop -> ${this.out}`;case e.LB_WRITE:return`lbwrite ${this.arg} -> ${this.out}`;case e.LB_CHECK:return`lbcheck ${this.arg} -> ${this.out}`;case e.RUNE:return this.runes===null?`rune <null>`:[`rune `,e.escapeRunes(this.runes),(this.arg&b.FOLD_CASE)===0?``:`/i`,` -> `,this.out].join(``);case e.RUNE1:return`rune1 ${e.escapeRunes(this.runes)} -> ${this.out}`;case e.RUNE_ANY:return`any -> ${this.out}`;case e.RUNE_ANY_NOT_NL:return`anynotnl -> ${this.out}`;default:throw Error(`unhandled case in Inst.toString`)}}},dr=class{constructor(e){this.sparse=new Int32Array(e),this.densePcs=new Int32Array(e),this.denseCaps=null,this.size=0,this.ncap=0}init(e){this.ncap=e;let t=this.densePcs.length*e;(!this.denseCaps||this.denseCaps.length<t)&&(this.denseCaps=new Int32Array(t))}contains(e){let t=this.sparse[e];return t<this.size&&this.densePcs[t]===e}isEmpty(){return this.size===0}add(e){let t=this.size++;return this.sparse[e]=t,this.densePcs[t]=e,t}clear(){this.size=0}toString(){let e=`{`;for(let t=0;t<this.size;t++)t!==0&&(e+=`, `),e+=this.densePcs[t];return e+=`}`,e}},fr=class e{static fromRE2(t){let n=new e;return n.prog=t.prog,n.re2=t,n.q0=new dr(n.prog.numInst()),n.q1=new dr(n.prog.numInst()),n.matched=!1,n.matchcap=new Int32Array(n.prog.numCap<2?2:n.prog.numCap),n.ncap=0,n}static fromMachine(t){return e.fromRE2(t.re2)}constructor(){this.prog=null,this.re2=null,this.q0=null,this.q1=null,this.matched=!1,this.matchcap=null,this.ncap=0,this.lbTable=null}init(e){this.ncap=e,e>this.matchcap.length?this.matchcap=new Int32Array(e).fill(-1):this.matchcap.fill(-1),this.q0.init(e),this.q1.init(e),this.prog.numLb>0&&((!this.lbTable||this.lbTable.length<this.prog.numLb+1)&&(this.lbTable=new Int32Array(this.prog.numLb+1)),this.lbTable.fill(-1))}submatches(){return this.ncap===0?T.emptyInts():T.toArray(this.matchcap.subarray(0,this.ncap))}
11match(e,t,n){let r=this.re2.cond;if(r===T.EMPTY_ALL||(n===b.ANCHOR_START||n===b.ANCHOR_BOTH)&&t!==0)return!1;this.matched=!1,this.matchcap.fill(-1);let i=this.prog.numLb>0?0:t,a=t,o=this.q0,s=this.q1,c=e.step(i),l=c>>3,u=c&7,d=-1,f=0;c!==nr.EOF()&&(c=e.step(i+u),d=c>>3,f=c&7);let p;for(p=i===0?T.emptyOpContext(-1,l):e.context(i);;){if(o.isEmpty()){if((r&T.EMPTY_BEGIN_TEXT)!==0&&i!==0||(n===b.ANCHOR_START||n===b.ANCHOR_BOTH)&&i!==0||this.matched)break;if(this.prog.numLb===0&&this.re2.prefix.length!==0&&d!==this.re2.prefixRune&&e.canCheckPrefix()){let t=e.index(this.re2,i);if(t<0)break;i+=t,c=e.step(i),l=c>>3,u=c&7,c=e.step(i+u),d=c>>3,f=c&7,p=e.context(i)}}if(i===0&&this.prog.numLb>0)for(let e=0;e<this.prog.lbStarts.length;e++)this.add(o,this.prog.lbStarts[e],i,this.matchcap,0,p);!this.matched&&(i===0||n===b.UNANCHORED)&&i>=a&&(this.ncap>0&&(this.matchcap[0]=i),this.add(o,this.prog.start,i,this.matchcap,0,p));let t=i+u;if(p=e.context(t),this.step(o,s,i,t,l,p,n,i===e.endPos()),u===0||this.ncap===0&&this.matched)break;i+=u,l=d,u=f,l!==-1&&(c=e.step(i+u),d=c>>3,f=c&7);let m=o;o=s,s=m}return s.clear(),this.matched}matchSet(e,t,n){let r=this.re2.cond;if(r===T.EMPTY_ALL||(n===b.ANCHOR_START||n===b.ANCHOR_BOTH)&&t!==0)return[];let i=this.prog.numLb>0?0:t,a=t,o=this.q0,s=this.q1,c=e.step(i),l=c>>3,u=c&7,d=-1,f=0;c!==nr.EOF()&&(c=e.step(i+u),d=c>>3,f=c&7);let p=i===0?T.emptyOpContext(-1,l):e.context(i),m=new Set;for(;!(o.isEmpty()&&((r&T.EMPTY_BEGIN_TEXT)!==0&&i!==0||(n===b.ANCHOR_START||n===b.ANCHOR_BOTH)&&i!==0));){if(i===0&&this.prog.numLb>0)for(let e=0;e<this.prog.lbStarts.length;e++)this.add(o,this.prog.lbStarts[e],i,this.matchcap,0,p);(i===0||n===b.UNANCHORED)&&i>=a&&this.add(o,this.prog.start,i,this.matchcap,0,p);let t=i+u;p=e.context(t);for(let r=0;r<o.size;r++){let a=o.densePcs[r],c=this.prog.inst[a],u=r*this.ncap,d=!1;switch(c.op){case O.MATCH:if(n===b.ANCHOR_BOTH&&i!==e.endPos())break;m.add(c.arg);break;case O.RUNE:d=c.matchRune(l);break;case O.RUNE1:d=l===c.runes[0];break;case O.RUNE_ANY:d=!0;break;case O.RUNE_ANY_NOT_NL:d=l!==10;break;default:continue}d&&this.add(s,c.out,t,o.denseCaps,u,p)}if(o.clear(),u===0)break;i+=u,l=d,u=f,l!==-1&&(c=e.step(i+u),d=c>>3,f=c&7);let r=o;o=s,s=r}return s.clear(),Array.from(m).sort((e,t)=>e-t)}step(e,t,n,r,i,a,o,s){let c=this.re2.longest;for(let l=0;l<e.size;l++){let u=e.densePcs[l],d=l*this.ncap;if(c&&this.matched&&this.ncap>0&&this.matchcap[0]<e.denseCaps[d])continue;let f=this.prog.inst[u],p=!1;switch(f.op){case O.MATCH:if(o===b.ANCHOR_BOTH&&!s)break;if(this.ncap>0&&(!c||!this.matched||this.matchcap[1]<n)){e.denseCaps[d+1]=n;for(let t=0;t<this.ncap;t++)this.matchcap[t]=e.denseCaps[d+t]}c||(e.size=0),this.matched=!0;break;case O.RUNE:p=f.matchRune(i);break;case O.RUNE1:p=i===f.runes[0];break;case O.RUNE_ANY:p=!0;break;case O.RUNE_ANY_NOT_NL:p=i!==10;break;default:continue}p&&this.add(t,f.out,r,e.denseCaps,d,a)}e.clear()}add(e,t,n,r,i,a){for(;;){if(t===0||e.contains(t))return;let o=e.add(t),s=this.prog.inst[t];switch(s.op){case O.FAIL:return;case O.ALT:case O.ALT_MATCH:this.add(e,s.out,n,r,i,a),t=s.arg;continue;case O.EMPTY_WIDTH:if((s.arg&~a)===0){t=s.out;continue}return;case O.NOP:t=s.out;continue;case O.CAPTURE:if(s.arg<this.ncap){let t=r[i+s.arg];r[i+s.arg]=n,this.add(e,s.out,n,r,i,a),r[i+s.arg]=t;return}t=s.out;continue;case O.LB_WRITE:this.lbTable[Math.abs(s.arg)]=n,t=s.out;continue;case O.LB_CHECK:if(s.arg>0){if(this.lbTable[s.arg]===n){t=s.out;continue}}else if(this.lbTable[-s.arg]!==n){t=s.out;continue}return;case O.MATCH:case O.RUNE:case O.RUNE1:case O.RUNE_ANY:case O.RUNE_ANY_NOT_NL:if(this.ncap>0){let t=o*this.ncap;for(let n=0;n<this.ncap;n++)e.denseCaps[t+n]=r[i+n]}return;default:throw new lr(`unhandled`)}}}},pr=e=>{let t=-2128831035;for(let n=0;n<e.length;n++)t^=e[n],t=Math.imul(t,16777619);return t},mr=(e,t)=>{if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0},hr=class{constructor(e,t,n=[]){this.nfaStates=e,this.isMatch=t,this.matchIDs=n,this.nextLatin1=Array(w.MAX_LATIN1+1).fill(null),this.nextLatin1Anchored=Array(w.MAX_LATIN1+1).fill(null),this.transKeys=[],this.transVals=[],this.lastSeen=0}},gr=class e{static MAX_CACHE_CLEARS=5;static STATE_MEMORY_ESTIMATE=838;constructor(t,n=8388608){this.prog=t,this.stateCache=new Map,this.stateCount=0,this.startState=null,this.stateLimit=Math.max(1,Math.floor(n/e.STATE_MEMORY_ESTIMATE)),this.cacheClears=0,this.failed=!1,this.clock=0}computeClosure(e){let t=new Set,n=[...e],r=!1,i=[];for(;n.length>0;){let e=n.pop();if(t.has(e))continue;t.add(e);let a=this.prog.getInst(e);switch(a.op){case O.MATCH:r=!0,i.includes(a.arg)||i.push(a.arg);break;case O.ALT:case O.ALT_MATCH:n.push(a.out),n.push(a.arg);break;case O.NOP:case O.CAPTURE:n.push(a.out);break;case O.EMPTY_WIDTH:case O.LB_WRITE:case O.LB_CHECK:return null}}let a=Int32Array.from(t).sort();return i.sort((e,t)=>
11e-t),{pcs:a,isMatch:r,matchIDs:i}}getState(t){let n=this.computeClosure(t);if(!n)return null;let r=n.pcs,i=pr(r),a=this.stateCache.get(i);if(a)for(let e=0;e<a.length;e++){let t=a[e];if(mr(t.nfaStates,r))return t.lastSeen=++this.clock,t}else a=[],this.stateCache.set(i,a);if(this.failed)return null;if(this.stateCount>=this.stateLimit){if(this.cacheClears++,this.cacheClears>=e.MAX_CACHE_CLEARS)return this.failed=!0,this.stateCache.clear(),this.stateCount=0,this.startState=null,null;this.evictCache(),a=this.stateCache.get(i),a||(a=[],this.stateCache.set(i,a))}let o=new hr(r,n.isMatch,n.matchIDs);return o.lastSeen=++this.clock,a.push(o),this.stateCount++,o}evictCache(){let e=[];for(let t of this.stateCache.values())for(let n=0;n<t.length;n++)e.push(t[n]);e.sort((e,t)=>e.lastSeen-t.lastSeen);let t=Math.max(1,Math.floor(this.stateLimit/2)),n=e.length-t,r=e.slice(n),i=new Set(r);this.stateCache.clear(),this.stateCount=0;for(let e=0;e<r.length;e++){let t=r[e];t.nextLatin1.fill(null),t.nextLatin1Anchored.fill(null),t.transKeys.length=0,t.transVals.length=0;let n=pr(t.nfaStates),i=this.stateCache.get(n);i||(i=[],this.stateCache.set(n,i)),i.push(t),this.stateCount++}this.startState&&!i.has(this.startState)&&(this.startState=null)}step(e,t,n){if(t<=w.MAX_LATIN1)if(n===b.UNANCHORED){let n=e.nextLatin1[t];if(n!==null)return n}else{let n=e.nextLatin1Anchored[t];if(n!==null)return n}else{let r=t+(n===b.UNANCHORED?0:w.MAX_RUNE+1),i=e.transKeys,a=i.length;for(let t=0;t<a;t++)if(i[t]===r)return e.transVals[t]}let r=[];for(let n=0;n<e.nfaStates.length;n++){let i=e.nfaStates[n],a=this.prog.getInst(i);O.isRuneOp(a.op)&&a.matchRune(t)&&r.push(a.out)}n===b.UNANCHORED&&r.push(this.prog.start);let i=this.getState(r);if(t<=w.MAX_LATIN1)n===b.UNANCHORED?e.nextLatin1[t]=i:e.nextLatin1Anchored[t]=i;else{let r=t+(n===b.UNANCHORED?0:w.MAX_RUNE+1);e.transKeys.push(r),e.transVals.push(i)}return i}match(e,t,n){if((n===b.ANCHOR_START||n===b.ANCHOR_BOTH)&&t!==0)return!1;if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let r=e.endPos(),i=this.startState;if(i.isMatch)if(n===b.ANCHOR_BOTH){if(t===r)return!0}else return!0;let a=t;for(;a<r;){let t=e.step(a),o=t>>3,s=t&7;if(s===0)break;if(i=n===b.UNANCHORED&&o<=w.MAX_LATIN1&&i.nextLatin1[o]||this.step(i,o,n),i===null)return null;if(i.lastSeen=++this.clock,i.isMatch)if(n===b.ANCHOR_BOTH){if(a+s===r)return!0}else return!0;if(i.nfaStates.length===0&&n!==b.UNANCHORED)return!1;a+=s}return!1}matchSet(e,t,n){if((n===b.ANCHOR_START||n===b.ANCHOR_BOTH)&&t!==0)return[];if(!this.startState&&(this.startState=this.getState([this.prog.start]),!this.startState))return null;let r=e.endPos(),i=this.startState,a=new Set,o=(e,t)=>{e.isMatch&&(n===b.ANCHOR_BOTH?t===r&&e.matchIDs.forEach(e=>a.add(e)):e.matchIDs.forEach(e=>a.add(e)))};o(i,t);let s=t;for(;s<r;){let t=e.step(s),r=t>>3,a=t&7;if(a===0)break;if(i=n===b.UNANCHORED&&r<=w.MAX_LATIN1&&i.nextLatin1[r]||this.step(i,r,n),i===null)return null;if(i.lastSeen=++this.clock,s+=a,o(i,s),i.nfaStates.length===0&&n!==b.UNANCHORED)break}return Array.from(a).sort((e,t)=>e-t)}},_r=32,vr=500,yr=256,br=262144,xr=class{constructor(){this.end=0,this.cap=new Int32Array,this.matchcap=new Int32Array,this.ncap=0,this.jobPc=new Int32Array(yr),this.jobArg=new Uint8Array(yr),this.jobPos=new Int32Array(yr),this.jobLen=0,this.visited=new Uint32Array}reset(e,t,n){this.end=t,this.jobLen=0,this.ncap=n;let r=e.numInst()*(t+1)+_r-1>>>5;this.visited.length<r?this.visited=new Uint32Array(r):this.visited.fill(0,0,r),this.cap.length<n?this.cap=new Int32Array(n).fill(-1):this.cap.fill(-1,0,n),this.matchcap.length<n?this.matchcap=new Int32Array(n).fill(-1):this.matchcap.fill(-1,0,n)}shouldVisit(e,t){let n=e*(this.end+1)+t,r=n>>>5,i=1<<(n&31);return(this.visited[r]&i)===0&&(this.visited[r]|=i,!0)}push(e,t,n,r){if(e.prog.getInst(t).op!==O.FAIL&&(r||this.shouldVisit(t,n))){if(this.jobLen>=this.jobPc.length){let e=this.jobPc.length*2,t=new Int32Array(e);t.set(this.jobPc),this.jobPc=t;let n=new Uint8Array(e);n.set(this.jobArg),this.jobArg=n;let r=new Int32Array(e);r.set(this.jobPos),this.jobPos=r}this.jobPc[this.jobLen]=t,this.jobArg[this.jobLen]=+!!r,this.jobPos[this.jobLen]=n,this.jobLen++}}tryBacktrack(e,t,n,r,i){let a=e.longest;for(this.push(e,n,r,!1);this.jobLen>0;){this.jobLen--;let n=this.jobPc[this.jobLen],r=this.jobArg[this.jobLen]===1,o=this.jobPos[this.jobLen],s=!0;for(;!(!s&&!this.shouldVisit(n,o));){s=!1;let c=e.prog.getInst(n);
11switch(c.op){case O.FAIL:throw new lr(`unexpected InstFail`);case O.ALT:if(r){r=!1,n=c.arg;continue}this.push(e,n,o,!0),n=c.out;continue;case O.ALT_MATCH:{let t=e.prog.getInst(c.out);if(O.isRuneOp(t.op)){this.push(e,c.arg,o,!1),n=c.arg,o=this.end;continue}this.push(e,c.out,this.end,!1),n=c.out;continue}case O.RUNE:{let e=t.step(o);if(e===nr.EOF()||!c.matchRune(e>>3))break;o+=e&7,n=c.out;continue}case O.RUNE1:{let e=t.step(o);if(e===nr.EOF()||e>>3!==c.runes[0])break;o+=e&7,n=c.out;continue}case O.RUNE_ANY_NOT_NL:{let e=t.step(o);if(e===nr.EOF()||e>>3==10)break;o+=e&7,n=c.out;continue}case O.RUNE_ANY:{let e=t.step(o);if(e===nr.EOF())break;o+=e&7,n=c.out;continue}case O.CAPTURE:if(r){this.cap[c.arg]=o;break}c.arg<this.ncap&&(this.push(e,n,this.cap[c.arg],!0),this.cap[c.arg]=o),n=c.out;continue;case O.EMPTY_WIDTH:{let e=t.context(o);if((c.arg&~e)!==0)break;n=c.out;continue}case O.NOP:n=c.out;continue;case O.MATCH:{if(i===b.ANCHOR_BOTH&&o!==this.end)break;if(this.ncap===0)return!0;this.ncap>1&&(this.cap[1]=o);let e=this.matchcap[1];if((e===-1||a&&o>0&&o>e)&&this.matchcap.set(this.cap),!a||o===this.end)return!0;break}case O.LB_WRITE:case O.LB_CHECK:throw new lr(`Backtracker cannot evaluate Lookbehind instructions`);default:throw new lr(`bad inst`)}break}}return a&&this.matchcap.length>1&&this.matchcap[1]>=0}},Sr=[],Cr=class e{static shouldBacktrack(e){return e.numInst()<=vr}static maxBitStateLen(t){return e.shouldBacktrack(t)?Math.floor(br/t.numInst()):0}static execute(e,t,n,r,i){let a=e.cond;if(a===T.EMPTY_ALL||(r===b.ANCHOR_START||r===b.ANCHOR_BOTH)&&n!==0||(a&T.EMPTY_BEGIN_TEXT)!==0&&n!==0)return null;let o=Sr.length>0?Sr.pop():new xr,s=t.endPos();o.reset(e.prog,s,i);let c=!1;if((a&T.EMPTY_BEGIN_TEXT)!==0||r===b.ANCHOR_START||r===b.ANCHOR_BOTH)o.ncap>0&&(o.cap[0]=n),o.tryBacktrack(e,t,e.prog.start,n,r)&&(c=!0);else{let i=-1;for(;n<=s&&i!==0;n+=i){if(e.prefix.length>0){let r=t.index(e,n);if(r<0)break;n+=r}if(o.ncap>0&&(o.cap[0]=n),o.tryBacktrack(e,t,e.prog.start,n,r)){c=!0;break}let a=t.step(n);i=a===nr.EOF()?0:a&7}}if(!c)return Sr.push(o),null;let l=i===0?[]:T.toArray(o.matchcap.subarray(0,i));return Sr.push(o),l}},wr=class{constructor(e){this.sparse=new Uint32Array(e),this.dense=new Uint32Array(e),this.size=0,this.nextIndex=0}empty(){return this.nextIndex>=this.size}next(){return this.dense[this.nextIndex++]}clear(){this.size=0,this.nextIndex=0}contains(e){return e<this.sparse.length&&this.sparse[e]<this.size&&this.dense[this.sparse[e]]===e}insert(e){this.contains(e)||this.insertNew(e)}insertNew(e){e>=this.sparse.length||(this.sparse[e]=this.size,this.dense[this.size]=e,this.size++)}},Tr=(e,t,n,r)=>{let i=e.length,a=t.length,o=0,s=0,c=[],l=[],u=!0,d=-1,f=i=>{let a=i?e:t,u=i?o:s,f=i?n:r;return d>0&&a[u]<=c[d]?!1:(c.push(a[u],a[u+1]),i?o+=2:s+=2,d+=2,l.push(f),!0)};for(;o<i||s<a;)if(u=s>=a?f(!0):o>=i||t[s]<e[o]?f(!1):f(!0),!u)return null;return{merged:c,next:l}},Er=class{constructor(e){this.start=e.start,this.numCap=e.numCap,this.inst=Array(e.inst.length);for(let t=0;t<e.inst.length;t++){let n=e.inst[t],r=new O(n.op);r.out=n.out,r.arg=n.arg,r.runes=n.runes?n.runes.slice():[],r.next=null,this.inst[t]=r}}},Dr=e=>{let t=new Er(e);for(let e=0;e<t.inst.length;e++){let n=t.inst[e];if(n.op!==O.ALT&&n.op!==O.ALT_MATCH)continue;let r=`out`,i=`arg`,a=t.inst[n[i]];if(a.op!==O.ALT&&a.op!==O.ALT_MATCH&&(r=`arg`,i=`out`,a=t.inst[n[i]],a.op!==O.ALT&&a.op!==O.ALT_MATCH))continue;let o=t.inst[n[r]];if(o.op===O.ALT||o.op===O.ALT_MATCH)continue;let s=`out`,c=`arg`,l=!1;a.out===e?l=!0:a.arg===e&&(l=!0,s=`arg`,c=`out`),l&&(a[s]=n[r]),n[r]===a[s]&&(n[i]=a[c])}return t},Or=e=>{if(e.inst.length>=1e3)return null;let t=new wr(e.inst.length),n=new wr(e.inst.length),r=Array(e.inst.length),i=Array(e.inst.length).fill(!1),a=o=>{let s=!0,c=e.inst[o];if(n.contains(o))return!0;switch(n.insert(o),c.op){case O.ALT:case O.ALT_MATCH:{s=a(c.out)&&a(c.arg);let e=i[c.out],t=i[c.arg];if(e&&t)return!1;if(t){let n=c.out;c.out=c.arg,c.arg=n;let r=e;e=t,t=r}e&&(i[o]=!0,c.op=O.ALT_MATCH);let n=Tr(r[c.out]||[],r[c.arg]||[],c.out,c.arg);if(!n)return!1;r[o]=n.merged,c.next=new Uint32Array(n.next);break}case O.CAPTURE:case O.EMPTY_WIDTH:case O.NOP:s=a(c.out),i[o]=i[c.out],r[o]=r[c.out]?r[c.out].slice():[],c.next=new Uint32Array(Math.floor(r[o].length/2)+1).fill(c.out);break;case O.MATCH:case O.FAIL:i[o]=c.op===O.MATCH;break;case O.RUNE:{if(i[o]=!1,c.next&&c.next.length>0)break;if(t.insert(c.out),!c.runes||c.runes.length===0){r[o]=[],c.next=new Uint32Array([c.out]);break}let e=[];
11if(c.runes.length===1&&(c.arg&b.FOLD_CASE)!==0){let t=c.runes[0];e.push(t,t);for(let n=w.simpleFold(t);n!==t;n=w.simpleFold(n))e.push(n,n);e.sort((e,t)=>e-t)}else for(let t=0;t<c.runes.length;t++)e.push(c.runes[t]);r[o]=e,c.next=new Uint32Array(Math.floor(e.length/2)+1).fill(c.out),c.op=O.RUNE;break}case O.RUNE1:{if(i[o]=!1,c.next&&c.next.length>0)break;t.insert(c.out);let e=[];if((c.arg&b.FOLD_CASE)!==0){let t=c.runes[0];e.push(t,t);for(let n=w.simpleFold(t);n!==t;n=w.simpleFold(n))e.push(n,n);e.sort((e,t)=>e-t)}else e.push(c.runes[0],c.runes[0]);r[o]=e,c.next=new Uint32Array(Math.floor(e.length/2)+1).fill(c.out),c.op=O.RUNE;break}case O.RUNE_ANY:if(i[o]=!1,c.next&&c.next.length>0)break;t.insert(c.out),r[o]=[0,w.MAX_RUNE],c.next=new Uint32Array([c.out]);break;case O.RUNE_ANY_NOT_NL:if(i[o]=!1,c.next&&c.next.length>0)break;t.insert(c.out),r[o]=[0,9,11,w.MAX_RUNE],c.next=new Uint32Array(Math.floor(r[o].length/2)+1).fill(c.out)}return s};for(t.clear(),t.insert(e.start);!t.empty();)if(n.clear(),!a(t.next()))return null;for(let t=0;t<e.inst.length;t++)r[t]&&(e.inst[t].runes=r[t]);return e},kr=(e,t)=>{for(let n=0;n<t.inst.length;n++){let r=t.inst[n];switch(r.op){case O.ALT:case O.ALT_MATCH:case O.RUNE:break;case O.CAPTURE:case O.EMPTY_WIDTH:case O.NOP:case O.MATCH:case O.FAIL:e.inst[n].next=null;break;case O.RUNE1:case O.RUNE_ANY:case O.RUNE_ANY_NOT_NL:e.inst[n].next=null,e.inst[n].op=r.op,e.inst[n].runes=r.runes?r.runes.slice():[]}}},Ar=class e{static compile(e){if(e.start===0||e.numLb>0)return null;let t=e.inst[e.start];if(t.op!==O.EMPTY_WIDTH||(t.arg&T.EMPTY_BEGIN_TEXT)===0)return null;let n=!1;for(let t=0;t<e.inst.length;t++)if(e.inst[t].op===O.ALT||e.inst[t].op===O.ALT_MATCH){n=!0;break}for(let t=0;t<e.inst.length;t++){let r=e.inst[t],i=e.inst[r.out].op;switch(r.op){case O.ALT:case O.ALT_MATCH:if(i===O.MATCH||e.inst[r.arg].op===O.MATCH)return null;break;case O.EMPTY_WIDTH:if(i===O.MATCH){if((r.arg&T.EMPTY_END_TEXT)===T.EMPTY_END_TEXT)continue;return null}break;default:if(i===O.MATCH&&n)return null}}let r=Dr(e);return r=Or(r),r!==null&&kr(r,e),r}static next(e,t){let n=e.matchRunePos(t);return n>=0?e.next[n]:e.op===O.ALT_MATCH?e.out:0}static execute(t,n,r,i,a){let o=t.onepass;if(!o)return null;let s=new Int32Array(a).fill(-1),c=!1,l=n.step(r),u=l>>3,d=l&7,f=nr.EOF(),p=-1,m=0;l!==nr.EOF()&&(f=n.step(r+d),f!==nr.EOF()&&(p=f>>3,m=f&7));let h=r===0?T.emptyOpContext(-1,u):n.context(r),g=o.start,ee;for(;;){switch(ee=o.inst[g],g=ee.out,ee.op){case O.MATCH:return i===b.ANCHOR_BOTH&&r!==n.endPos()?null:(c=!0,s.length>0&&(s[0]=0,s[1]=r),a===0?[]:T.toArray(s));case O.RUNE:if(!ee.matchRune(u))return null;break;case O.RUNE1:if(u!==ee.runes[0])return null;break;case O.RUNE_ANY:break;case O.RUNE_ANY_NOT_NL:if(u===10)return null;break;case O.ALT:case O.ALT_MATCH:g=e.next(ee,u);continue;case O.FAIL:return null;case O.NOP:continue;case O.EMPTY_WIDTH:if((ee.arg&~h)!==0)return null;continue;case O.CAPTURE:ee.arg<s.length&&(s[ee.arg]=r);continue;default:throw new lr(`bad inst`)}if(d===0)break;h=T.emptyOpContext(u,p),r+=d,u=p,d=m,u!==-1&&(f=n.step(r+d),f===nr.EOF()?(p=-1,m=0):(p=f>>3,m=f&7))}return c?a===0?[]:T.toArray(s):null}},k=class e{static Op=Zn([`NO_MATCH`,`EMPTY_MATCH`,`LITERAL`,`CHAR_CLASS`,`ANY_CHAR_NOT_NL`,`ANY_CHAR`,`BEGIN_LINE`,`END_LINE`,`BEGIN_TEXT`,`END_TEXT`,`WORD_BOUNDARY`,`NO_WORD_BOUNDARY`,`CAPTURE`,`STAR`,`PLUS`,`QUEST`,`REPEAT`,`CONCAT`,`ALTERNATE`,`PLB`,`NLB`,`LEFT_PAREN`,`VERTICAL_BAR`]);static isPseudoOp(t){return t>=e.Op.LEFT_PAREN}static emptySubs(){return[]}static quoteIfHyphen(e){return e===x.CODES.get(`-`)?`\\`:``}static fromRegexp(t){let n=new e(t.op);return n.flags=t.flags,n.subs=t.subs,n.runes=t.runes,n.cap=t.cap,n.min=t.min,n.max=t.max,n.name=t.name,n.namedGroups=t.namedGroups,n.lb=t.lb,n}constructor(t){this.op=t,this.flags=0,this.subs=e.emptySubs(),this.runes=[],this.min=0,this.max=0,this.cap=0,this.name=null,this.namedGroups=Object.create(null),this.lb=0}reinit(){this.flags=0,this.subs=e.emptySubs(),this.runes=[],this.cap=0,this.min=0,this.max=0,this.name=null,this.namedGroups=Object.create(null),this.lb=0}toString(){return this.appendTo()}appendTo(){let t=``;switch(this.op){case e.Op.NO_MATCH:t+=`[^\\x00-\\x{10FFFF}]`;break;case e.Op.EMPTY_MATCH:t+=`(?:)`;break;case e.Op.STAR:case e.Op.PLUS:case e.Op.QUEST:case e.Op.REPEAT:{let n=this.subs[
110];switch(n.op>e.Op.CAPTURE||n.op===e.Op.LITERAL&&n.runes.length>1?t+=`(?:${n.appendTo()})`:t+=n.appendTo(),this.op){case e.Op.STAR:t+=`*`;break;case e.Op.PLUS:t+=`+`;break;case e.Op.QUEST:t+=`?`;break;case e.Op.REPEAT:t+=`{${this.min}`,this.min!==this.max&&(t+=`,`,this.max>=0&&(t+=this.max)),t+=`}`}(this.flags&b.NON_GREEDY)!==0&&(t+=`?`);break}case e.Op.CONCAT:for(let n of this.subs)n.op===e.Op.ALTERNATE?t+=`(?:${n.appendTo()})`:t+=n.appendTo();break;case e.Op.ALTERNATE:{let e=``;for(let n of this.subs)t+=e,e=`|`,t+=n.appendTo();break}case e.Op.LITERAL:(this.flags&b.FOLD_CASE)!==0&&(t+=`(?i:`);for(let e of this.runes)t+=T.escapeRune(e);(this.flags&b.FOLD_CASE)!==0&&(t+=`)`);break;case e.Op.ANY_CHAR_NOT_NL:t+=`(?-s:.)`;break;case e.Op.ANY_CHAR:t+=`(?s:.)`;break;case e.Op.PLB:t+=`(?<=${this.subs[0].appendTo()})`;break;case e.Op.NLB:t+=`(?<!${this.subs[0].appendTo()})`;break;case e.Op.CAPTURE:this.name===null||this.name.length===0?t+=`(`:t+=`(?P<${this.name}>`,this.subs[0].op!==e.Op.EMPTY_MATCH&&(t+=this.subs[0].appendTo()),t+=`)`;break;case e.Op.BEGIN_TEXT:t+=`\\A`;break;case e.Op.END_TEXT:(this.flags&b.WAS_DOLLAR)===0?t+=`\\z`:t+=`(?-m:$)`;break;case e.Op.BEGIN_LINE:t+=`^`;break;case e.Op.END_LINE:t+=`$`;break;case e.Op.WORD_BOUNDARY:t+=`\\b`;break;case e.Op.NO_WORD_BOUNDARY:t+=`\\B`;break;
11case e.Op.CHAR_CLASS:if(this.runes.length%2!=0){t+=`[invalid char class]`;break}if(t+=`[`,this.runes.length===0)t+=`^\\x00-\\x{10FFFF}`;else if(this.runes[0]===0&&this.runes[this.runes.length-1]===w.MAX_RUNE){t+=`^`;for(let n=1;n<this.runes.length-1;n+=2){let r=this.runes[n]+1,i=this.runes[n+1]-1;t+=e.quoteIfHyphen(r),t+=T.escapeRune(r),r!==i&&(t+=`-`,t+=e.quoteIfHyphen(i),t+=T.escapeRune(i))}}else for(let n=0;n<this.runes.length;n+=2){let r=this.runes[n],i=this.runes[n+1];t+=e.quoteIfHyphen(r),t+=T.escapeRune(r),r!==i&&(t+=`-`,t+=e.quoteIfHyphen(i),t+=T.escapeRune(i))}t+=`]`;break;default:t+=this.op}return t}maxCap(){let t=0;if(this.op===e.Op.CAPTURE&&(t=this.cap),this.subs!==null)for(let e of this.subs){let n=e.maxCap();t<n&&(t=n)}return t}equals(t){if(!(t!==null&&t instanceof e)||this.op!==t.op)return!1;switch(this.op){case e.Op.END_TEXT:if((this.flags&b.WAS_DOLLAR)!==(t.flags&b.WAS_DOLLAR))return!1;break;case e.Op.LITERAL:case e.Op.CHAR_CLASS:if(this.runes===null&&t.runes===null)break;if(this.runes===null||t.runes===null||this.runes.length!==t.runes.length)return!1;for(let e=0;e<this.runes.length;e++)if(this.runes[e]!==t.runes[e])return!1;break;case e.Op.ALTERNATE:case e.Op.CONCAT:if(this.subs.length!==t.subs.length)return!1;for(let e=0;e<this.subs.length;++e)if(!this.subs[e].equals(t.subs[e]))return!1;break;case e.Op.STAR:case e.Op.PLUS:case e.Op.QUEST:if((this.flags&b.NON_GREEDY)!==(t.flags&b.NON_GREEDY)||!this.subs[0].equals(t.subs[0]))return!1;break;case e.Op.REPEAT:if((this.flags&b.NON_GREEDY)!==(t.flags&b.NON_GREEDY)||this.min!==t.min||this.max!==t.max||!this.subs[0].equals(t.subs[0]))return!1;break;case e.Op.CAPTURE:if(this.cap!==t.cap||(this.name===null?t.name!==null:this.name!==t.name)||!this.subs[0].equals(t.subs[0]))return!1;break;case e.Op.PLB:case e.Op.NLB:if(this.lb!==t.lb||!this.subs[0].equals(t.subs[0]))return!1}return!0}},jr=class{constructor(e){this.next=[Object.create(null)],this.fail=[0],this.match=[!1];for(let t of e){let e=0;for(let n=0;n<t.length;n++){let r=t[n];r in this.next[e]||(this.next.push(Object.create(null)),this.fail.push(0),this.match.push(!1),this.next[e][r]=this.next.length-1),e=this.next[e][r]}this.match[e]=!0}let t=[];for(let e in this.next[0])if(Object.prototype.hasOwnProperty.call(this.next[0],e)){let n=this.next[0][e];this.fail[n]=0,t.push(n)}for(;t.length>0;){let e=t.shift();for(let n in this.next[e])if(Object.prototype.hasOwnProperty.call(this.next[e],n)){let r=this.next[e][n],i=this.fail[e];for(;i!==0&&!(n in this.next[i]);)i=this.fail[i];n in this.next[i]?this.fail[r]=this.next[i][n]:this.fail[r]=0,this.match[r]=this.match[r]||this.match[this.fail[r]],t.push(r)}}}searchUTF16(e,t,n){let r=0;for(let i=t;i<n;i++){let t=e.charCodeAt(i);for(;r!==0&&!(t in this.next[r]);)r=this.fail[r];if(t in this.next[r]&&(r=this.next[r][t]),this.match[r])return!0}return!1}searchUTF8(e,t,n){let r=0;for(let i=t;i<n;i++){let t=e[i];for(;r!==0&&!(t in this.next[r]);)r=this.fail[r];if(t in this.next[r]&&(r=this.next[r][t]),this.match[r])return!0}return!1}},A=class e{static Type={NONE:0,EXACT:1,AND:2,OR:3};constructor(e){this.type=e,this.subs=[],this.str=``,this.bytes=null,this.ac16=null,this.ac8=null}eval(t,n){switch(this.type){case e.Type.NONE:return!0;case e.Type.EXACT:return t.hasString(this,n);case e.Type.AND:for(let e=0;e<this.subs.length;e++)if(!this.subs[e].eval(t,n))return!1;return!0;case e.Type.OR:if(this.ac16&&this.ac8)return t.hasAnyString(this,n);for(let e=0;e<this.subs.length;e++)if(this.subs[e].eval(t,n))return!0;return!1;default:return!0}}},Mr=class e{static build(t){let n=e.fromRegexp(t);return e.simplify(n)}static fromRegexp(t){if(!t)return new A(A.Type.NONE);switch(t.op){case k.Op.PLB:case k.Op.NLB:case k.Op.NO_MATCH:case k.Op.EMPTY_MATCH:case k.Op.BEGIN_LINE:case k.Op.END_LINE:case k.Op.BEGIN_TEXT:case k.Op.END_TEXT:case k.Op.WORD_BOUNDARY:case k.Op.NO_WORD_BOUNDARY:case k.Op.CHAR_CLASS:case k.Op.ANY_CHAR_NOT_NL:case k.Op.ANY_CHAR:return new A(A.Type.NONE);case k.Op.LITERAL:{if(t.runes.length===0||(t.flags&b.FOLD_CASE)!==0)return new A(A.Type.NONE);let e=new A(A.Type.EXACT),n=``;for(let e=0;e<t.runes.length;e++)n+=String.fromCodePoint(t.runes[e]);return e.str=n,e.bytes=T.stringToUtf8ByteArray(e.str),e}case k.Op.CAPTURE:case k.Op.PLUS:return e.fromRegexp(t.subs[0]);case k.Op.REPEAT:return t.min>
11=1?e.fromRegexp(t.subs[0]):new A(A.Type.NONE);case k.Op.CONCAT:{let n=new A(A.Type.AND);for(let r of t.subs)n.subs.push(e.fromRegexp(r));return n}case k.Op.ALTERNATE:{let n=new A(A.Type.OR);for(let r of t.subs)n.subs.push(e.fromRegexp(r));return n}default:return new A(A.Type.NONE)}}static simplify(t){if(t.type===A.Type.EXACT||t.type===A.Type.NONE)return t;if(t.type===A.Type.AND){let n=[];for(let r of t.subs){let t=e.simplify(r);if(t.type!==A.Type.NONE)if(t.type===A.Type.AND)for(let e=0;e<t.subs.length;e++)n.push(t.subs[e]);else n.push(t)}return n.length===0?new A(A.Type.NONE):n.length===1?n[0]:(t.subs=n,t)}if(t.type===A.Type.OR){let n=[];for(let r of t.subs){let t=e.simplify(r);if(t.type===A.Type.NONE)return new A(A.Type.NONE);if(t.type===A.Type.OR)for(let e=0;e<t.subs.length;e++)n.push(t.subs[e]);else n.push(t)}if(n.length===0)return new A(A.Type.NONE);if(n.length===1)return n[0];let r=new Set,i=[];for(let e of n)e.type===A.Type.EXACT?r.has(e.str)||(r.add(e.str),i.push(e)):i.push(e);t.subs=i;let a=!0;for(let e of i)if(e.type!==A.Type.EXACT){a=!1;break}return a&&i.length>1&&(t.ac16=new jr(i.map(e=>{let t=[];for(let n=0;n<e.str.length;n++)t.push(e.str.charCodeAt(n));return t})),t.ac8=new jr(i.map(e=>e.bytes))),t}return t}},Nr=class{constructor(e=0,t=0){this.head=e,this.tail=t}},Pr=class{constructor(){this.inst=[],this.start=0,this.numCap=2,this.lbStarts=[],this.numLb=0}getInst(e){return this.inst[e]}numInst(){return this.inst.length}addInst(e){this.inst.push(new O(e))}skipNop(e){let t=this.inst[e];for(;t.op===O.NOP||t.op===O.CAPTURE;)t=this.inst[e],e=t.out;return t}prefix(){let e=``,t=this.skipNop(this.start);if(!O.isRuneOp(t.op)||t.runes.length!==1)return[t.op===O.MATCH,e];for(;O.isRuneOp(t.op)&&t.runes.length===1&&(t.arg&b.FOLD_CASE)===0;)e+=String.fromCodePoint(t.runes[0]),t=this.skipNop(t.out);return[t.op===O.MATCH,e]}startCond(){let e=0,t=this.start;loop:for(;;){let n=this.inst[t];switch(n.op){case O.EMPTY_WIDTH:e|=n.arg;break;case O.FAIL:return-1;case O.CAPTURE:case O.NOP:break;default:break loop}t=n.out}return e}patch(e,t){let n=e.head;for(;n!==0;){let e=this.inst[n>>1];n&1?(n=e.arg,e.arg=t):(n=e.out,e.out=t)}}append(e,t){if(e.head===0)return t;if(t.head===0)return e;let n=this.inst[e.tail>>1];return e.tail&1?n.arg=t.head:n.out=t.head,new Nr(e.head,t.tail)}toString(){let e=``;for(let t=0;t<this.inst.length;t++){let n=e.length;e+=t,t===this.start&&(e+=`*`),e+=`        `.substring(e.length-n),e+=this.inst[t],e+=`
12`}return e}},Fr=class{constructor(e=0,t=new Nr,n=!1){this.i=e,this.out=t,this.nullable=n}},Ir=class e{static ANY_RUNE_NOT_NL(){return[0,x.CODES.get(`
13`)-1,x.CODES.get(`
14`)+1,w.MAX_RUNE]}static ANY_RUNE(){return[0,w.MAX_RUNE]}static compileRegexp(t){let n=new e,r=n.compile(t);return n.prog.patch(r.out,n.newInst(O.MATCH).i),n.prog.start=r.i,n.prog}static compileSet(t){let n=new e;if(t.length===0)return n.prog.start=n.newInst(O.FAIL).i,n.prog;let r=[];for(let e=0;e<t.length;e++){let i=n.compile(t[e]),a=n.newInst(O.MATCH);n.prog.getInst(a.i).arg=e,n.prog.patch(i.out,a.i),r.push(i.i)}let i=r[0];for(let e=1;e<r.length;e++){let t=n.newInst(O.ALT),a=n.prog.getInst(t.i);a.out=i,a.arg=r[e],i=t.i}return n.prog.start=i,n.prog}constructor(){this.prog=new Pr,this.newInst(O.FAIL)}newInst(e){return this.prog.addInst(e),new Fr(this.prog.numInst()-1,new Nr,!0)}nop(){let e=this.newInst(O.NOP);return e.out=new Nr(e.i<<1,e.i<<1),e}fail(){return new Fr}cap(e){let t=this.newInst(O.CAPTURE);return t.out=new Nr(t.i<<1,t.i<<1),this.prog.getInst(t.i).arg=e,this.prog.numCap<e+1&&(this.prog.numCap=e+1),t}cat(e,t){return e.i===0||t.i===0?this.fail():(this.prog.patch(e.out,t.i),new Fr(e.i,t.out,e.nullable&&t.nullable))}alt(e,t){if(e.i===0)return t;if(t.i===0)return e;let n=this.newInst(O.ALT),r=this.prog.getInst(n.i);return r.out=e.i,r.arg=t.i,n.out=this.prog.append(e.out,t.out),n.nullable=e.nullable||t.nullable,n}loop(e,t){let n=this.newInst(O.ALT),r=this.prog.getInst(n.i);return t?(r.arg=e.i,n.out=new Nr(n.i<<1,n.i<<1)):(r.out=e.i,n.out=new Nr(n.i<<1|1,n.i<<1|1)),this.prog.patch(e.out,n.i),n}quest(e,t){let n=this.newInst(O.ALT),r=this.prog.getInst(n.i);return t?(r.arg=e.i,n.out=new Nr(n.i<<1,n.i<<1)):(r.out=e.i,n.out=new Nr(n.i<<1|1,n.i<<1|1)),n.out=this.prog.append(n.out,e.out),n}star(e,t){return e.nullable?this.quest(this.plus(e,t),t):this.loop(e,t)}plus(e,t){return new Fr(e.i,this.loop(e,t).out,e.nullable)}empty(e){let t=this.newInst(O.EMPTY_WIDTH);return this.prog.getInst(t.i).arg=e,t.out=new Nr(t.i<<1,t.i<<1),t}rune(e,t){let n=this.newInst(O.RUNE);n.nullable=!1;let r=this.prog.getInst(n.i);return r.runes=e,t&=b.FOLD_CASE,(e.length!==1||w.simpleFold(e[0])===e[0])&&(t&=~b.FOLD_CASE),r.arg=t,n.out=new Nr(n.i<<1,n.i<<1),(t&b.FOLD_CASE)===0&&e.length===1||e.length===2&&e[0]===e[1]?r.op=O.RUNE1:e.length===2&&e[0]===0&&e[1]===w.MAX_RUNE?r.op=O.RUNE_ANY:e.length===4&&e[0]===0&&e[1]===x.CODES.get(`
15`)-1&&e[2]===x.CODES.get(`
16`)+1&&e[3]===w.MAX_RUNE&&(r.op=O.RUNE_ANY_NOT_NL),n}lookBehind(t,n){let r=this.newInst(O.LB_WRITE);this.prog.getInst(r.i).arg=n;let i=this.rune(e.ANY_RUNE(),0),a=this.star(i,!0),o=this.cat(a,t);this.prog.patch(o.out,r.i);let s=this.newInst(O.LB_CHECK);return this.prog.getInst(s.i).arg=n,this.prog.lbStarts.push(o.i),Math.abs(n)>this.prog.numLb&&(this.prog.numLb=Math.abs(n)),s.out=new Nr(s.i<<1,s.i<<1),s}compile(t){switch(t.op){case k.Op.NO_MATCH:return this.fail();case k.Op.EMPTY_MATCH:return this.nop();case k.Op.LITERAL:if(t.runes.length===0)return this.nop();{let e=null;for(let n of t.runes){let r=this.rune([n],t.flags);e=e===null?r:this.cat(e,r)}return e}case k.Op.CHAR_CLASS:return this.rune(t.runes,t.flags);case k.Op.ANY_CHAR_NOT_NL:return this.rune(e.ANY_RUNE_NOT_NL(),0);case k.Op.ANY_CHAR:return this.rune(e.ANY_RUNE(),0);case k.Op.BEGIN_LINE:return this.empty(T.EMPTY_BEGIN_LINE);case k.Op.END_LINE:return this.empty(T.EMPTY_END_LINE);case k.Op.BEGIN_TEXT:return this.empty(T.EMPTY_BEGIN_TEXT);case k.Op.END_TEXT:return this.empty(T.EMPTY_END_TEXT);case k.Op.WORD_BOUNDARY:return this.empty(T.EMPTY_WORD_BOUNDARY);case k.Op.NO_WORD_BOUNDARY:return this.empty(T.EMPTY_NO_WORD_BOUNDARY);case k.Op.PLB:case k.Op.NLB:return this.lookBehind(this.compile(t.subs[0]),t.lb);case k.Op.CAPTURE:{let e=this.cap(t.cap<<1),n=this.compile(t.subs[0]),r
16=this.cap(t.cap<<1|1);return this.cat(this.cat(e,n),r)}case k.Op.STAR:return this.star(this.compile(t.subs[0]),(t.flags&b.NON_GREEDY)!==0);case k.Op.PLUS:return this.plus(this.compile(t.subs[0]),(t.flags&b.NON_GREEDY)!==0);case k.Op.QUEST:return this.quest(this.compile(t.subs[0]),(t.flags&b.NON_GREEDY)!==0);case k.Op.CONCAT:if(t.subs.length===0)return this.nop();{let e=null;for(let n of t.subs){let t=this.compile(n);e=e===null?t:this.cat(e,t)}return e}case k.Op.ALTERNATE:if(t.subs.length===0)return this.nop();{let e=null;for(let n of t.subs){let t=this.compile(n);e=e===null?t:this.alt(e,t)}return e}default:throw new or(`regexp: unhandled case in compile`)}}},Lr=class e{static simplify(t){if(t===null)return null;switch(t.op){case k.Op.PLB:case k.Op.NLB:case k.Op.CAPTURE:{let n=e.simplify(t.subs[0]);if(n!==t.subs[0]){let e=k.fromRegexp(t);return e.runes=[],e.subs=[n],e}return t}case k.Op.CONCAT:case k.Op.ALTERNATE:{let n=[],r=!1;for(let i=0;i<t.subs.length;i++){let a=t.subs[i],o=e.simplify(a);if(o!==a&&(r=!0),t.op===k.Op.CONCAT){if(o.op===k.Op.NO_MATCH)return new k(k.Op.NO_MATCH);if(o.op===k.Op.EMPTY_MATCH){r=!0;continue}if(o.op===k.Op.CONCAT){r=!0;for(let e=0;e<o.subs.length;e++)n.push(o.subs[e]);continue}}else if(t.op===k.Op.ALTERNATE){if(o.op===k.Op.NO_MATCH){r=!0;continue}if(o.op===k.Op.ALTERNATE){r=!0;for(let e=0;e<o.subs.length;e++)n.push(o.subs[e]);continue}}n.push(o)}if(r){if(n.length===0)return new k(t.op===k.Op.CONCAT?k.Op.EMPTY_MATCH:k.Op.NO_MATCH);if(n.length===1)return n[0];let e=k.fromRegexp(t);return e.runes=[],e.subs=n,e}return t}case k.Op.CHAR_CLASS:return t.runes===null?t:t.runes.length===0?new k(k.Op.NO_MATCH):t.runes.length===2&&t.runes[0]===0&&t.runes[1]===w.MAX_RUNE?new k(k.Op.ANY_CHAR):t.runes.length===4&&t.runes[0]===0&&t.runes[1]===x.CODES.get(`
17`)-1&&t.runes[2]===x.CODES.get(`
18`)+1&&t.runes[3]===w.MAX_RUNE?new k(k.Op.ANY_CHAR_NOT_NL):t;case k.Op.STAR:case k.Op.PLUS:case k.Op.QUEST:{let n=e.simplify(t.subs[0]);return e.simplify1(t.op,t.flags,n,t)}case k.Op.REPEAT:{if(t.min===0&&t.max===0)return new k(k.Op.EMPTY_MATCH);let n=e.simplify(t.subs[0]);if(t.max===-1){if(t.min===0)return e.simplify1(k.Op.STAR,t.flags,n,null);if(t.min===1)return e.simplify1(k.Op.PLUS,t.flags,n,null);let r=new k(k.Op.CONCAT),i=[];for(let e=0;e<t.min-1;e++)i.push(n);return i.push(e.simplify1(k.Op.PLUS,t.flags,n,null)),r.subs=i.slice(0),e.simplify(r)}if(t.min===1&&t.max===1)return n;let r=null;if(t.min>0){r=[];for(let e=0;e<t.min;e++)r.push(n)}if(t.max>t.min){let i=e.simplify1(k.Op.QUEST,t.flags,n,null);for(let r=t.min+1;r<t.max;r++){let r=new k(k.Op.CONCAT);r.subs=[n,i],i=e.simplify1(k.Op.QUEST,t.flags,r,null)}if(r===null)return i;r.push(i)}if(r!==null){let t=new k(k.Op.CONCAT);return t.subs=r.slice(0),e.simplify(t)}return new k(k.Op.NO_MATCH)}}return t}static simplify1(e,t,n,r){if(n.op===k.Op.EMPTY_MATCH)return n;if(n.op===k.Op.NO_MATCH)return e===k.Op.PLUS?n:new k(k.Op.EMPTY_MATCH);if(e===n.op&&(t&b.NON_GREEDY)===(n.flags&b.NON_GREEDY))return n;if(r!==null&&r.op===e&&(r.flags&b.NON_GREEDY)===(t&b.NON_GREEDY)&&n===r.subs[0])return r;let i=new k(e);return i.flags=t,i.subs=[n],i}},j=class{constructor(e,t){this.sign=e,this.cls=t}},Rr=[48,57],zr=[9,10,12,13,32,32],Br=[48,57,65,90,95,95,97,122],Vr=new Map([[`\\d`,new j(1,Rr)],[`\\D`,new j(-1,Rr)],[`\\s`,new j(1,zr)],[`\\S`,new j(-1,zr)],[`\\w`,new j(1,Br)],[`\\W`,new j(-1,Br)]]),Hr=[48,57,65,90,97,122],Ur=[65,90,97,122],Wr=[0,127],Gr=[9,9,32,32],Kr=[0,31,127,127],qr=[48,57],Jr=[33,126],Yr=[97,122],Xr=[32,126],Zr=[33,47,58,64,91,96,123,126],Qr=[9,13,32,32],$r=[65,90],ei=[48,57,65,90,95,95,97,122],ti=[48,57,65,70,97,102],ni=new Map([[`[:alnum:]`,new j(1,Hr)],[`[:^alnum:]`,new j(-1,Hr)],[`[:alpha:]`,new j(1,Ur)],[`[:^alpha:]`,new j(-1,Ur)],[`[:ascii:]`,new j(1,Wr)],[`[:^ascii:]`,new j(-1,Wr)],[`[:blank:]`,new j(1,Gr)],[`[:^blank:]`,new j(-1,Gr)],[`[:cntrl:]`,new j(1,Kr)],[`[:^cntrl:]`,new j(-1,Kr)],[`[:digit:]`,new j(1,qr)],[`[:^digit:]`,new j(-1,qr)],[`[:graph:]`,new j(1,Jr)],[`[:^graph:]`,new j(-1,Jr)],[`[:lower:]`,new j(1,Yr)],[`[:^lower:]`,new j(-1,Yr)],[`[:print:]`,new j(1,Xr)],[`[:^print:]`,new j(-1,Xr)],[`[:punct:]`,new j(1,Zr)],[`[:^punct:]`,new j(-1,Zr)],[`[:space:]`,new j(1,Qr)],[`[:^space
18:]`,new j(-1,Qr)],[`[:upper:]`,new j(1,$r)],[`[:^upper:]`,new j(-1,$r)],[`[:word:]`,new j(1,ei)],[`[:^word:]`,new j(-1,ei)],[`[:xdigit:]`,new j(1,ti)],[`[:^xdigit:]`,new j(-1,ti)]]),ri=class e{static charClassToString(e,t){let n=`[`;for(let r=0;r<t;r+=2){r>0&&(n+=` `);let t=e[r],i=e[r+1];n+=t===i?`0x${t.toString(16)}`:`0x${t.toString(16)}-0x${i.toString(16)}`}return n+=`]`,n}static cmp(e,t,n,r){let i=e[t]-n;return i===0?r-e[t+1]:i}static qsortIntPair(t,n,r){let i=((n+r)/2|0)&-2,a=t[i],o=t[i+1],s=n,c=r;for(;s<=c;){for(;s<r&&e.cmp(t,s,a,o)<0;)s+=2;for(;c>n&&e.cmp(t,c,a,o)>0;)c-=2;if(s<=c){if(s!==c){let e=t[s];t[s]=t[c],t[c]=e,e=t[s+1],t[s+1]=t[c+1],t[c+1]=e}s+=2,c-=2}}n<c&&e.qsortIntPair(t,n,c),s<r&&e.qsortIntPair(t,s,r)}constructor(e=T.emptyInts()){this.r=e,this.len=e.length}toArray(){return this.len===this.r.length?this.r:this.r.slice(0,this.len)}cleanClass(){if(this.len<4)return this;e.qsortIntPair(this.r,0,this.len-2);let t=2;for(let e=2;e<this.len;e+=2){let n=this.r[e],r=this.r[e+1];if(n<=this.r[t-1]+1){r>this.r[t-1]&&(this.r[t-1]=r);continue}this.r[t]=n,this.r[t+1]=r,t+=2}return this.len=t,this}appendLiteral(e,t){return(t&b.FOLD_CASE)===0?this.appendRange(e,e):this.appendFoldedRange(e,e)}appendRange(e,t){if(this.len>0){for(let n=2;n<=4;n+=2)if(this.len>=n){let r=this.r[this.len-n],i=this.r[this.len-n+1];if(e<=i+1&&r<=t+1)return e<r&&(this.r[this.len-n]=e),t>i&&(this.r[this.len-n+1]=t),this}}return this.r[this.len++]=e,this.r[this.len++]=t,this}appendFoldedRange(e,t){if(e<=w.MIN_FOLD&&t>=w.MAX_FOLD||t<w.MIN_FOLD||e>w.MAX_FOLD)return this.appendRange(e,t);e<w.MIN_FOLD&&(this.appendRange(e,w.MIN_FOLD-1),e=w.MIN_FOLD),t>w.MAX_FOLD&&(this.appendRange(w.MAX_FOLD+1,t),t=w.MAX_FOLD);for(let n=e;n<=t;n++){this.appendRange(n,n);for(let e=w.simpleFold(n);e!==n;e=w.simpleFold(e))this.appendRange(e,e)}return this}appendClass(e){for(let t=0;t<e.length;t+=2)this.appendRange(e[t],e[t+1]);return this}appendFoldedClass(e){for(let t=0;t<e.length;t+=2)this.appendFoldedRange(e[t],e[t+1]);return this}appendNegatedClass(e){let t=0;for(let n=0;n<e.length;n+=2){let r=e[n],i=e[n+1];t<=r-1&&this.appendRange(t,r-1),t=i+1}return t<=w.MAX_RUNE&&this.appendRange(t,w.MAX_RUNE),this}appendTable(e){for(let t=0;t<e.length;++t){let n=e.getLo(t),r=e.getHi(t),i=e.getStride(t);if(i===1){this.appendRange(n,r);continue}for(let e=n;e<=r;e+=i)this.appendRange(e,e)}return this}appendNegatedTable(e){let t=0;for(let n=0;n<e.length;++n){let r=e.getLo(n),i=e.getHi(n),a=e.getStride(n);if(a===1){t<=r-1&&this.appendRange(t,r-1),t=i+1;continue}for(let e=r;e<=i;e+=a)t<=e-1&&this.appendRange(t,e-1),t=e+1}return t<=w.MAX_RUNE&&this.appendRange(t,w.MAX_RUNE),this}appendTableWithSign(e,t){return t<0?this.appendNegatedTable(e):this.appendTable(e)}negateClass(){let e=0,t=0;for(let n=0;n<this.len;n+=2){let r=this.r[n],i=this.r[n+1];e<=r-1&&(this.r[t]=e,this.r[t+1]=r-1,t+=2),e=i+1}return this.len=t,e<=w.MAX_RUNE&&(this.r[this.len++]=e,this.r[this.len++]=w.MAX_RUNE),this}appendClassWithSign(e,t){return t<0?this.appendNegatedClass(e):this.appendClass(e)}appendGroup(t,n){let r=t.cls;return n&&(r=new e().appendFoldedClass(r).cleanClass().toArray()),this.appendClassWithSign(r,t.sign)}toString(){return e.charClassToString(this.r,this.len)}},ii=class{constructor(e){this.str=e,this.position=0}pos(){return this.position}rewindTo(e){this.position=e}more(){return this.position<this.str.length}peek(){return this.str.codePointAt(this.position)}skip(e){this.position+=e}skipString(e){this.position+=e.length}pop(){let e=this.str.codePointAt(this.position);return this.position+=T.charCount(e),e}lookingAt(e){return this.str.startsWith(e,this.position)}rest(){return this.str.substring(this.position)}from(e){return this.str.substring(e,this.position)}toString(){return this.rest()}},ai=class e{static ERR_INTERNAL_ERROR=`regexp/syntax: internal error`;static ERR_INVALID_CHAR_RANGE=`invalid character class range`;static ERR_INVALID_ESCAPE=`invalid escape sequence`;static ERR_INVALID_NAMED_CAPTURE=`invalid named capture`;static ERR_INVALID_PERL_OP=`invalid or unsupported Perl syntax`;static ERR_INVALID_REPEAT_OP=`invalid nested repetition operator`;
18static ERR_INVALID_REPEAT_SIZE=`invalid repeat count`;static ERR_MISSING_BRACKET=`missing closing ]`;static ERR_MISSING_PAREN=`missing closing )`;static ERR_MISSING_REPEAT_ARGUMENT=`missing argument to repetition operator`;static ERR_TRAILING_BACKSLASH=`trailing backslash at end of expression`;static ERR_DUPLICATE_NAMED_CAPTURE=`duplicate capture group name`;static ERR_UNEXPECTED_PAREN=`unexpected )`;static ERR_NESTING_DEPTH=`expression nests too deeply`;static ERR_LARGE=`expression too large`;static ERR_INVALID_CAPTURE_IN_LOOKBEHIND=`invalid capture in lookbehind`;static MAX_HEIGHT=1e3;static MAX_SIZE=3355443;static MAX_RUNES=33554432;static ANY_TABLE=new S(new Uint32Array([0,w.MAX_RUNE,1]));static ASCII_TABLE=new S(new Uint32Array([0,127,1]));static ASCII_FOLD_TABLE=new S(new Uint32Array([0,127,1,383,383,1,8490,8490,1]));static unicodeTable(t){return t===`Any`?{tab:e.ANY_TABLE,fold:e.ANY_TABLE,sign:1}:t===`Ascii`?{tab:e.ASCII_TABLE,fold:e.ASCII_FOLD_TABLE,sign:1}:t===`Assigned`?{tab:Kn.CATEGORIES.get(`Cn`),fold:Kn.CATEGORIES.get(`Cn`),sign:-1}:t===`Lc`?{tab:Kn.CATEGORIES.get(`LC`),fold:Kn.FOLD_CATEGORIES.get(`LC`),sign:1}:Kn.CATEGORIES.has(t)?{tab:Kn.CATEGORIES.get(t),fold:Kn.FOLD_CATEGORIES.get(t),sign:1}:Kn.SCRIPTS.has(t)?{tab:Kn.SCRIPTS.get(t),fold:Kn.FOLD_SCRIPT.get(t),sign:1}:null}static minFoldRune(e){if(e<w.MIN_FOLD||e>w.MAX_FOLD)return e;let t=e,n=e;for(e=w.simpleFold(e);e!==n;e=w.simpleFold(e))t>e&&(t=e);return t}static leadingRegexp(e){if(e.op===k.Op.EMPTY_MATCH)return null;if(e.op===k.Op.CONCAT&&e.subs.length>0){let t=e.subs[0];return t.op===k.Op.EMPTY_MATCH?null:t}return e}static literalRegexp(e,t){let n=new k(k.Op.LITERAL);return n.flags=t,n.runes=T.stringToRunes(e),n}static parse(t,n){return new e(t,n).parseInternal()}static parseRepeat(t){let n=t.pos();if(!t.more()||!t.lookingAt(`{`))return-1;t.skip(1);let r=e.parseInt(t);if(r===-1||!t.more())return-1;let i;if(!t.lookingAt(`,`))i=r;else{if(t.skip(1),!t.more())return-1;if(t.lookingAt(`}`))i=-1;else if((i=e.parseInt(t))===-1)return-1}if(!t.more()||!t.lookingAt(`}`))return-1;if(t.skip(1),r<0||r>1e3||i===-2||i>1e3||i>=0&&r>i)throw new D(e.ERR_INVALID_REPEAT_SIZE,t.from(n));return r<<16|i&w.MAX_BMP}static isValidCaptureName(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){let n=e.codePointAt(t);if(n!==x.CODES.get(`_`)&&!T.isalnum(n))return!1}return!0}static parseInt(e){let t=e.pos();for(;e.more()&&e.peek()>=x.CODES.get(`0`)&&e.peek()<=x.CODES.get(`9`);)e.skip(1);let n=e.from(t);return n.length===0||n.length>1&&n.codePointAt(0)===x.CODES.get(`0`)?-1:n.length>8?-2:parseInt(n,10)}static isCharClass(e){return e.op===k.Op.LITERAL&&e.runes.length===1||e.op===k.Op.CHAR_CLASS||e.op===k.Op.ANY_CHAR_NOT_NL||e.op===k.Op.ANY_CHAR}static matchRune(e,t){switch(e.op){case k.Op.LITERAL:return e.runes.length===1&&e.runes[0]===t;case k.Op.CHAR_CLASS:for(let n=0;n<e.runes.length;n+=2)if(e.runes[n]<=t&&t<=e.runes[n+1])return!0;return!1;case k.Op.ANY_CHAR_NOT_NL:return t!==x.CODES.get(`
19`);case k.Op.ANY_CHAR:return!0}return!1}static mergeCharClass(t,n){switch(t.op){case k.Op.ANY_CHAR:break;case k.Op.ANY_CHAR_NOT_NL:e.matchRune(n,x.CODES.get(`
20`))&&(t.op=k.Op.ANY_CHAR);break;case k.Op.CHAR_CLASS:t.runes=n.op===k.Op.LITERAL?new ri(t.runes).appendLiteral(n.runes[0],n.flags).toArray():new ri(t.runes).appendClass(n.runes).toArray();break;case k.Op.LITERAL:if(n.runes[0]===t.runes[0]&&n.flags===t.flags)break;t.op=k.Op.CHAR_CLASS,t.runes=new ri().appendLiteral(t.runes[0],t.flags).appendLiteral(n.runes[0],n.flags).toArray()}}static parseEscape(t){let n=t.pos();if(t.skip(1),!t.more())throw new D(e.ERR_TRAILING_BACKSLASH);let r=t.pop();bigswitch:switch(r){case x.CODES.get(`1`):case x.CODES.get(`2`):case x.CODES.get(`3`):case x.CODES.get(`4`):case x.CODES.get(`5`):case x.CODES.get(`6`):case x.CODES.get(`7`):if(!t.more()||t.peek()<x.CODES.get(`0`)||t.peek()>x.CODES.get(`7`))break;case x.CODES.get(`0`):{let e=r-x.CODES.get(`0`);for(let n=1;n<3&&!(!t.more()||t.peek()<x.CODES.get(`0`)||t.peek()>x.CODES.get(`7`));n++)e=e*8+t.peek()-x.CODES.get(`0`),t.skip(1);return e}case x.CODES.get(`x`):{if(!t.more())break;if(r=t.pop(),r===x.CODES.get(`{`)){let e=0,n=0;for(;;){if(!t.more())break bigswitch;if(r=t.pop(),r===x.CODES.get(`}`))break;let i=T.unhex(r);if(i<0||(n=n*16+i,n>w.MAX_RUNE))break bigswitch;e++}if(e===0)break bigswitch;return n}let e=T.unhex(r);if(!t.more())break;r=t.pop();let n=T.unhex(r);if(e<0||n<0)break;return e*16+n}case x.CODES.get(`a`):return x.CODES.get(`\x07`);case x.CODES.get(`f`):return x.CODES.get(`\f`);case x.CODES.get(`n`):return x.CODES.get(`
21`);case x.CODES.get(`r`):return x.CODES.get(`\r`);case x.CODES.get(`t`):return x.CODES.get(`	`);case x.CODES.get(`v`):return x.CODES.get(`\v`);default:if(r<=w.MAX_ASCII&&!T.isalnum(r))return r}throw new D(e.ERR_INVALID_ESCAPE,t.from(n))}static parseClassChar(t,n){if(!t.more())throw new D(e.ERR_MISSING_BRACKET,t.from(n));return t.lookingAt(`\\`)?e.parseEscape(t):t.pop()}static concatRunes(e,t){for(let n=0;n<t.length;n++)e.push(t[n]);return e}static hasCapture(t){if(t===null)return!1;if(t.op===k.Op.CAPTURE)return!0;
21if(t.subs){for(let n of t.subs)if(e.hasCapture(n))return!0}return!1}constructor(e,t=0){this.wholeRegexp=e,this.flags=t,this.numCap=0,this.namedGroups=Object.create(null),this.stack=[],this.free=null,this.numRegexp=0,this.numRunes=0,this.repeats=0,this.height=null,this.size=null,this.nlb=0}newRegexp(e){let t=this.free;return t!==null&&t.subs!==null&&t.subs.length>0?(this.free=t.subs[0],t.reinit(),t.op=e):(t=new k(e),this.numRegexp+=1),t}reuse(e){this.height!==null&&this.height.has(e)&&this.height.delete(e),e.subs!==null&&e.subs.length>0&&(e.subs[0]=this.free),this.free=e}checkLimits(t){if(this.numRunes>e.MAX_RUNES)throw new D(e.ERR_LARGE);this.checkSize(t),this.checkHeight(t)}checkSize(t){if(this.size===null){if(this.repeats===0&&(this.repeats=1),t.op===k.Op.REPEAT){let n=t.max;n===-1&&(n=t.min),n<=0&&(n=1),n>Math.floor(e.MAX_SIZE/this.repeats)?this.repeats=e.MAX_SIZE:this.repeats*=n}if(this.numRegexp<Math.floor(e.MAX_SIZE/this.repeats))return;this.size=new Map;for(let e of this.stack)this.checkSize(e)}if(this.calcSize(t,!0)>e.MAX_SIZE)throw new D(e.ERR_LARGE)}calcSize(e,t=!1){if(!t&&this.size!==null&&this.size.has(e))return this.size.get(e);let n=0;switch(e.op){case k.Op.LITERAL:n=e.runes.length;break;case k.Op.PLB:case k.Op.NLB:case k.Op.CAPTURE:case k.Op.STAR:n=2+this.calcSize(e.subs[0]);break;case k.Op.PLUS:case k.Op.QUEST:n=1+this.calcSize(e.subs[0]);break;case k.Op.CONCAT:for(let t of e.subs)n+=this.calcSize(t);break;case k.Op.ALTERNATE:for(let t of e.subs)n+=this.calcSize(t);e.subs.length>1&&(n=n+e.subs.length-1);break;case k.Op.REPEAT:{let t=this.calcSize(e.subs[0]);if(e.max===-1){n=e.min===0?2+t:1+e.min*t;break}n=e.max*t+(e.max-e.min);break}}return n=Math.max(1,n),this.size===null&&(this.size=new Map),this.size.set(e,n),n}checkHeight(t){if(!(this.numRegexp<e.MAX_HEIGHT)){if(this.height===null){this.height=new Map;for(let e of this.stack)this.checkHeight(e)}if(this.calcHeight(t,!0)>e.MAX_HEIGHT)throw new D(e.ERR_NESTING_DEPTH)}}calcHeight(e,t=!1){if(!t&&this.height!==null&&this.height.has(e))return this.height.get(e);let n=1;for(let t of e.subs){let e=this.calcHeight(t);n<1+e&&(n=1+e)}return this.height===null&&(this.height=new Map),this.height.set(e,n),n}pop(){return this.stack.pop()}popToPseudo(){let e=this.stack.length,t=e;for(;t>0&&!k.isPseudoOp(this.stack[t-1].op);)t--;let n=this.stack.slice(t,e);return this.stack=this.stack.slice(0,t),n}push(e){if(this.numRunes+=e.runes.length,e.op===k.Op.CHAR_CLASS&&e.runes.length===2&&e.runes[0]===e.runes[1]){if(this.maybeConcat(e.runes[0],this.flags&~b.FOLD_CASE))return null;e.op=k.Op.LITERAL,e.runes=[e.runes[0]],e.flags=this.flags&~b.FOLD_CASE}else if(e.op===k.Op.CHAR_CLASS&&e.runes.length===4&&e.runes[0]===e.runes[1]&&e.runes[2]===e.runes[3]&&w.simpleFold(e.runes[0])===e.runes[2]&&w.simpleFold(e.runes[2])===e.runes[0]||e.op===k.Op.CHAR_CLASS&&e.runes.length===2&&e.runes[0]+1===e.runes[1]&&w.simpleFold(e.runes[0])===e.runes[1]&&w.simpleFold(e.runes[1])===e.runes[0]){if(this.maybeConcat(e.runes[0],this.flags|b.FOLD_CASE))return null;e.op=k.Op.LITERAL,e.runes=[e.runes[0]],e.flags=this.flags|b.FOLD_CASE}else this.maybeConcat(-1,0);return this.stack.push(e),this.checkLimits(e),e}maybeConcat(t,n){let r=this.stack.length;if(r<2)return!1;let i=this.stack[r-1],a=this.stack[r-2];
21return i.op!==k.Op.LITERAL||a.op!==k.Op.LITERAL||(i.flags&b.FOLD_CASE)!==(a.flags&b.FOLD_CASE)?!1:(a.runes=e.concatRunes(a.runes,i.runes),t>=0?(i.runes=[t],i.flags=n,!0):(this.pop(),this.reuse(i),!1))}newLiteral(t,n){let r=this.newRegexp(k.Op.LITERAL);return r.flags=n,(n&b.FOLD_CASE)!==0&&(t=e.minFoldRune(t)),r.runes=[t],r}literal(e){this.push(this.newLiteral(e,this.flags))}op(e){let t=this.newRegexp(e);return t.flags=this.flags,this.push(t)}repeat(t,n,r,i,a,o){let s=this.flags;if((s&b.PERL_X)!==0&&(a.more()&&a.lookingAt(`?`)&&(a.skip(1),s^=b.NON_GREEDY),o!==-1))throw new D(e.ERR_INVALID_REPEAT_OP,a.from(o));let c=this.stack.length;if(c===0)throw new D(e.ERR_MISSING_REPEAT_ARGUMENT,a.from(i));let l=this.stack[c-1];if(k.isPseudoOp(l.op))throw new D(e.ERR_MISSING_REPEAT_ARGUMENT,a.from(i));let u=this.newRegexp(t);if(u.min=n,u.max=r,u.flags=s,u.subs=[l],this.stack[c-1]=u,this.checkLimits(u),t===k.Op.REPEAT&&(n>=2||r>=2)&&!this.repeatIsValid(u,1e3))throw new D(e.ERR_INVALID_REPEAT_SIZE,a.from(i))}repeatIsValid(e,t){if(e.op===k.Op.REPEAT){let n=e.max;if(n===0)return!0;if(n<0&&(n=e.min),n>t)return!1;n>0&&(t=Math.trunc(t/n))}for(let n of e.subs)if(!this.repeatIsValid(n,t))return!1;return!0}concat(){this.maybeConcat(-1,0);let e=this.popToPseudo();return e.length===0?this.push(this.newRegexp(k.Op.EMPTY_MATCH)):this.push(this.collapse(e,k.Op.CONCAT))}alternate(){let e=this.popToPseudo();return e.length>0&&this.cleanAlt(e[e.length-1]),e.length===0?this.push(this.newRegexp(k.Op.NO_MATCH)):this.push(this.collapse(e,k.Op.ALTERNATE))}cleanAlt(e){e.op===k.Op.CHAR_CLASS&&(e.runes=new ri(e.runes).cleanClass().toArray(),e.runes.length===2&&e.runes[0]===0&&e.runes[1]===w.MAX_RUNE?(e.runes=[],e.op=k.Op.ANY_CHAR):e.runes.length===4&&e.runes[0]===0&&e.runes[1]===x.CODES.get(`
22`)-1&&e.runes[2]===x.CODES.get(`
23`)+1&&e.runes[3]===w.MAX_RUNE&&(e.runes=[],e.op=k.Op.ANY_CHAR_NOT_NL))}collapse(e,t){if(e.length===1)return e[0];let n=0;for(let r of e)n+=r.op===t?r.subs.length:1;let r=Array(n).fill(null),i=0;for(let n of e)if(n.op===t){for(let e=0;e<n.subs.length;e++)r[i++]=n.subs[e];this.reuse(n)}else r[i++]=n;let a=this.newRegexp(t);if(a.subs=r,t===k.Op.ALTERNATE&&(a.subs=this.factor(a.subs),a.subs.length===1)){let e=a;a=a.subs[0],this.reuse(e)}return a}factor(t){if(t.length<2)return t;let n=0,r=t.length,i=0,a=null,o=0,s=0,c=0;for(let e=0;e<=r;e++){let l=null,u=0,d=0;if(e<r){let r=t[n+e];if(r.op===k.Op.CONCAT&&r.subs.length>0&&(r=r.subs[0]),r.op===k.Op.LITERAL&&(l=r.runes,u=r.runes.length,d=r.flags&b.FOLD_CASE),d===s){let e=0;for(;e<o&&e<u&&a[e]===l[e];)e++;if(e>0){o=e;continue}}}if(e!==c)if(e===c+1)t[i++]=t[n+c];else{let r=this.newRegexp(k.Op.LITERAL);r.flags=s,r.runes=a.slice(0,o);for(let r=c;r<e;r++)t[n+r]=this.removeLeadingString(t[n+r],o),this.checkLimits(t[n+r]);let l=this.collapse(t.slice(n+c,n+e),k.Op.ALTERNATE),u=this.newRegexp(k.Op.CONCAT);u.subs=[r,l],t[i++]=u}c=e,a=l,o=u,s=d}r=i,n=0,c=0,i=0;let l=null;for(let a=0;a<=r;a++){let o=null;if(!(a<r&&(o=e.leadingRegexp(t[n+a]),l!==null&&l.equals(o)&&(e.isCharClass(l)||l.op===k.Op.REPEAT&&l.min===l.max&&e.isCharClass(l.subs[0]))))){if(a!==c)if(a===c+1)t[i++]=t[n+c];else{let e=l;for(let e=c;e<a;e++){let r=e!==c;t[n+e]=this.removeLeadingRegexp(t[n+e],r),this.checkLimits(t[n+e])}let r=this.collapse(t.slice(n+c,n+a),k.Op.ALTERNATE),o=this.newRegexp(k.Op.CONCAT);o.subs=[e,r],t[i++]=o}c=a,l=o}}r=i,n=0,c=0,i=0;for(let a=0;a<=r;a++)if(!(a<r&&e.isCharClass(t[n+a]))){if(a!==c)if(a===c+1)t[i++]=t[n+c];else{let r=c;for(let e=c+1;e<a;e++){let i=t[n+r],a=t[n+e];(i.op<a.op||i.op===a.op&&(i.runes===null?0:i.runes.length)<(a.runes===null?0:a.runes.length))&&(r=e)}let o=t[n+c];t[n+c]=t[n+r],t[n+r]=o;for(let r=c+1;r<a;r++)e.mergeCharClass(t[n+c],t[n+r]),this.reuse(t[n+r]);this.cleanAlt(t[n+c]),t[i++]=t[n+c]}a<r&&(t[i++]=t[n+a]),c=a+1}r=i,n=0,c=0,i=0;for(let e=0;e<r;++e)e+1<r&&t[n+e].op===k.Op.EMPTY_MATCH&&t[n+e+1].op===k.Op.EMPTY_MATCH||(t[i++]=t[n+e]);return r=i,n=0,t.slice(n,r)}removeLeadingString(e,t){if(e.op===k.Op.CONCAT&&e.subs.length>0){let n=this.removeLeadingString(e.subs[0],t);if(e.subs[0]=n,n.op===k.Op.EMPTY_MATCH)switch(this.reuse(n),e.subs.length){case 0:case 1:e.op=k.Op.EMPTY_MATCH,e.subs=k.emptySubs();break;case 2:{let t=e;e=e.subs[1],this.reuse(t);break}default:e.subs=e.subs.slice(1,e.subs.length)}return e}return e.op===k.Op.LITERAL&&(e.runes=e.runes.slice(t,e.runes.length),e.runes.length===0&&(e.op=k.Op.EMPTY_MATCH)),e}removeLeadingRegexp(e,t){if(e.op===k.Op.CONCAT&&e.subs.length>0){switch(t&&this.reuse(e.subs[0]),e.subs=e.subs.slice(1,e.subs.length),e.subs.length){case 0:e.op=k.Op.EMPTY_MATCH,e.subs=k.emptySubs();break;case 1:{let t=e;e=e.subs[0],this.reuse(t);break}}return e}return t&&this.reuse(e),this.newRegexp(k.Op.EMPTY_MATCH)}parseInternal(){if((this.flags&b.LITERAL)!==0)return e.literalRegexp(this.wholeRegexp,this.flags);let t=-1,n=-1,r=-1,i=new ii(this.wholeRegexp);for(;i.more();){let a=-1;bigswitch:switch(i.peek()){case x.CODES.get(`(`):if((this.flags&b.LOOKBEHIND)!==0){if(i.lookingAt(`(?<=`)){this.parsePosLookBehind(),i.skip(4);break}if(i.lookingAt(`(?<!`)){this.parseNegLookBehind(),i.skip(4);break}}if((this.flags&b.PERL_X)!==0&&i.lookingAt(`(?`)){this.parsePerlFlags(i);break}this.op(k.Op.LEFT_PAREN).cap=++this.numCap,i.skip(1);break;case x.CODES.get(`|`):this.parseVerticalBar(),i.skip(1);break;case x.CODES.get(`)`):this.parseRightParen(),i.skip(1);break;case x.CODES.get(`^`):(this.flags&b.ONE_LINE)===0?this.op(k.Op.BEGIN_LINE):this.op(k.Op.BEGIN_TEXT),i.skip(1);break;case x.CODES.get(`$`):(this.flags&b.ONE_LINE)===0?this.op(k.Op.END_LINE):this.op(k.Op.END_TEXT).flags|=b.WAS_DOLLAR,i.skip(1);break;case x.CODES.get(`.`):(this.flags&b.DOT_NL)===0?this.op(k.Op.ANY_CHAR_NOT_NL):this.op(k.Op.ANY_CHAR),i.skip(1);break;case x.CODES.get(`[`):this.parseClass(i);break;case x.CODES.get(`*`):case x.CODES.get(`+`):case x.CODES.get(`?`):{a=i.pos();let e=null;switch(i.pop()){case x.CODES.get(`*`):e=k.Op.STAR;break;case x.CODES.get(`+`):e=k.Op.PLUS;break;case x.CODES.get(`?`):e=k.Op.QUEST}this.repeat(e,n,r,a,i,t);break}case x.CODES.get(`{`):{a=i.pos();let o=e.parseRepeat(i);if(o<0){i.rewindTo(a),this.literal(i.pop());break}n=o>>16,r=(o&w.MAX_BMP)<<16>>16,this.repeat(k.Op.REPEAT,n,r,a,i,t);break}case x.CODES.get(`\\`):{let t=i.pos();if(i.skip(1),(this.flags&b.PERL_X)!==0&&i.more())switch(i.pop()){case x.CODES.get(`A`):this.op(k.Op.BEGIN_TEXT);break bigswitch;case x.CODES.get(`b`):this.op(k.Op.WORD_BOUNDARY);break bigswitch;case x.CODES.get(`B`):this.op(k.Op.NO_WORD_BOUNDARY);break bigswitch;case x.CODES.get(`C`):throw new D(e.ERR_INVALID_ESCAPE,`\\C`);case x.CODES.get(`Q`):{let e=i.rest(),t=e.indexOf(`\\E`);t>=0?(e=e.substring(0,t),i.skipString(e),i.skipString(`\\E`)):i.skipString(e);let n=0;for(;n<e.length;){let t=e.codePointAt(n);this.literal(t),n+=T.charCount(t)}break bigswitch}case x.CODES.get(`z`):this.op(k.Op.END_TEXT);break bigswitch;default:i.rewindTo(t);break}else i.rewindTo(t);let n=this.newRegexp(k.Op.CHAR_CLASS);if(n.flags=this.flags,i.lookingAt(`\\p`)||i.lookingAt(`\\P`)){let e=new ri;if(this.parseUnicodeClass(i,e)){n.runes=e.toArray(),this.push(n);break bigswitch}}let r=new ri;if(this.parsePerlClassEscape(i,r)){n.runes=r.toArray(),this.push(n);break bigswitch}i.rewindTo(t),this.reuse(n),this.literal(e.parseEscape(i));break}default:this.literal(i.pop())}t=a}if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length!==1)throw new D(e.ERR_MISSING_PAREN,this.wholeRegexp);return this.stack[0].namedGroups=this.namedGroups,this.stack[0]}parsePerlFlags(t){let n=t.pos(),r=t.rest();if(r.startsWith(`(?P<`)||r.startsWith(`(?<`)){let n=r.charAt(2)===`P`?4:3,i=r.indexOf(`>`);
23if(i<0)throw new D(e.ERR_INVALID_NAMED_CAPTURE,r);let a=r.substring(n,i);if(t.skipString(a),t.skip(n+1),!e.isValidCaptureName(a))throw new D(e.ERR_INVALID_NAMED_CAPTURE,r.substring(0,i+1));let o=this.op(k.Op.LEFT_PAREN);if(o.cap=++this.numCap,this.namedGroups[a])throw new D(e.ERR_DUPLICATE_NAMED_CAPTURE,a);this.namedGroups[a]=this.numCap,o.name=a;return}t.skip(2);let i=this.flags,a=1,o=!1;loop:for(;t.more();){let e=t.pop();switch(e){case x.CODES.get(`i`):i|=b.FOLD_CASE,o=!0;break;case x.CODES.get(`m`):i&=~b.ONE_LINE,o=!0;break;case x.CODES.get(`s`):i|=b.DOT_NL,o=!0;break;case x.CODES.get(`U`):i|=b.NON_GREEDY,o=!0;break;case x.CODES.get(`-`):if(a<0)break loop;a=-1,i=~i,o=!1;break;case x.CODES.get(`:`):case x.CODES.get(`)`):if(a<0){if(!o)break loop;i=~i}e===x.CODES.get(`:`)&&this.op(k.Op.LEFT_PAREN),this.flags=i;return;default:break loop}}throw new D(e.ERR_INVALID_PERL_OP,t.from(n))}parsePosLookBehind(){let e=this.newRegexp(k.Op.LEFT_PAREN);return e.flags=this.flags,e.lb=++this.nlb,this.push(e)}parseNegLookBehind(){let e=this.newRegexp(k.Op.LEFT_PAREN);return e.flags=this.flags,e.lb=-++this.nlb,this.push(e)}parseVerticalBar(){this.concat(),this.swapVerticalBar()||this.op(k.Op.VERTICAL_BAR)}swapVerticalBar(){let t=this.stack.length;if(t>=3&&this.stack[t-2].op===k.Op.VERTICAL_BAR&&e.isCharClass(this.stack[t-1])&&e.isCharClass(this.stack[t-3])){let n=this.stack[t-1],r=this.stack[t-3];if(n.op>r.op){let e=r;r=n,n=e,this.stack[t-3]=r}return e.mergeCharClass(r,n),this.reuse(n),this.pop(),!0}if(t>=2){let e=this.stack[t-1],n=this.stack[t-2];if(n.op===k.Op.VERTICAL_BAR)return t>=3&&this.cleanAlt(this.stack[t-3]),this.stack[t-2]=e,this.stack[t-1]=n,!0}return!1}parseRightParen(){if(this.concat(),this.swapVerticalBar()&&this.pop(),this.alternate(),this.stack.length<2)throw new D(e.ERR_UNEXPECTED_PAREN,this.wholeRegexp);let t=this.pop(),n=this.pop();if(n.op!==k.Op.LEFT_PAREN)throw new D(e.ERR_UNEXPECTED_PAREN,this.wholeRegexp);if(this.flags=n.flags,n.lb!==0){if(e.hasCapture(t))throw new D(e.ERR_INVALID_CAPTURE_IN_LOOKBEHIND,this.wholeRegexp);n.op=n.lb>0?k.Op.PLB:k.Op.NLB,n.subs=[t],this.push(n);return}n.cap===0?this.push(t):(n.op=k.Op.CAPTURE,n.subs=[t],this.push(n))}parsePerlClassEscape(e,t){let n=e.pos();if((this.flags&b.PERL_X)===0||!e.more()||e.pop()!==x.CODES.get(`\\`)||!e.more())return!1;e.pop();let r=e.from(n),i=Vr.has(r)?Vr.get(r):null;return i!==null&&(t.appendGroup(i,(this.flags&b.FOLD_CASE)!==0),!0)}parseNamedClass(t,n){let r=t.rest(),i=r.indexOf(`:]`);if(i<0)return!1;let a=r.substring(0,i+2);t.skipString(a);let o=ni.has(a)?ni.get(a):null;if(o===null)throw new D(e.ERR_INVALID_CHAR_RANGE,a);return n.appendGroup(o,(this.flags&b.FOLD_CASE)!==0),!0}parseUnicodeClass(t,n){let r=t.pos();if((this.flags&b.UNICODE_GROUPS)===0||!t.lookingAt(`\\p`)&&!t.lookingAt(`\\P`))return!1;t.skip(1);let i=1,a=t.pop();if(a===x.CODES.get(`P`)&&(i=-1),!t.more())throw t.rewindTo(r),new D(e.ERR_INVALID_CHAR_RANGE,t.rest());a=t.pop();let o;if(a!==x.CODES.get(`{`))o=T.runeToString(a);else{let n=t.rest(),i=n.indexOf(`}`);if(i<0)throw t.rewindTo(r),new D(e.ERR_INVALID_CHAR_RANGE,t.rest());o=n.substring(0,i),t.skipString(o),t.skip(1)}o.length!==0&&o.codePointAt(0)===x.CODES.get(`^`)&&(i=0-i,o=o.substring(1));let s=e.unicodeTable(o);if(s===null)throw new D(e.ERR_INVALID_CHAR_RANGE,t.from(r));s.sign<0&&(i=0-i);let c=s.tab,l=s.fold;if((this.flags&b.FOLD_CASE)===0||l===null)n.appendTableWithSign(c,i);else{let e=new ri().appendTable(c).appendTable(l).cleanClass().toArray();n.appendClassWithSign(e,i)}return!0}parseClass(t){let n=t.pos();t.skip(1);let r=this.newRegexp(k.Op.CHAR_CLASS);r.flags=this.flags;let i=new ri,a=1;t.more()&&t.lookingAt(`^`)&&(a=-1,t.skip(1),(this.flags&b.CLASS_NL)===0&&i.appendRange(x.CODES.get(`
24`),x.CODES.get(`
25`)));let o=!0;for(;!t.more()||t.peek()!==x.CODES.get(`]`)||o;){if(t.more()&&t.lookingAt(`-`)&&(this.flags&b.PERL_X)===0&&!o){let r=t.rest();if(r===`-`||!r.startsWith(`-]`))throw t.rewindTo(n),new D(e.ERR_INVALID_CHAR_RANGE,t.rest())}o=!1;let r=t.pos();if(t.lookingAt(`[:`)){if(this.parseNamedClass(t,i))continue;t.rewindTo(r)}if(this.parseUnicodeClass(t,i)||this.parsePerlClassEscape(t,i))continue;t.rewindTo(r);let a=e.parseClassChar(t,n),s=a;if(t.more()&&t.lookingAt(`-`)){if(t.skip(1),t.more()&&t.lookingAt(`]`))t.skip(-1);else if(s=e.parseClassChar(t,n),s<a)throw new D(e.ERR_INVALID_CHAR_RANGE,t.from(r))}(this.flags&b.FOLD_CASE)===0?i.appendRange(a,s):i.appendFoldedRange(a,s)}t.skip(1),i.cleanClass(),a<0&&i.negateClass(),r.runes=i.toArray(),this.push(r)}},oi=class e{static initTest(t){let n=e.compile(t),r=new e(n.expr,n.prog,n.numSubexp,n.longest);return r.cond=n.cond,r.prefix=n.prefix,r.prefixUTF8=n.prefixUTF8,r.prefixComplete=n.prefixComplete,r.prefixRune=n.prefixRune,r.prefilter=n.prefilter,r}
25static compile(t){return e.compileImpl(t,b.PERL,!1)}static compilePOSIX(t){return e.compileImpl(t,b.POSIX,!0)}static compileImpl(t,n,r){let i=ai.parse(t,n),a=i.maxCap();i=Lr.simplify(i);let o=Mr.build(i),s=Ir.compileRegexp(i),c=new e(t,s,a,r);c.prefilter=o.type===A.Type.NONE?null:o;let[l,u]=s.prefix();return c.prefixComplete=l,c.prefix=u,c.prefixUTF8=T.stringToUtf8ByteArray(c.prefix),c.prefix.length>0&&(c.prefixRune=c.prefix.codePointAt(0)),c.namedGroups=i.namedGroups,c}static match(t,n){return e.compile(t).match(n)}constructor(e,t,n=0,r=0){this.expr=e,this.prog=t,this.numSubexp=n,this.longest=r,this.cond=t.startCond(),this.prefix=null,this.prefixUTF8=null,this.prefixComplete=!1,this.prefixRune=0,this.machinePool=[],this.dfa=new gr(this.prog),this.onepass=Ar.compile(this.prog),this.prefilter=null}matchPrefixComplete(e,t,n,r){if((n===b.ANCHOR_START||n===b.ANCHOR_BOTH)&&t!==0)return null;let i=-1,a=-1,o=e.prefixLength(this);if(n===b.UNANCHORED){let n=e.index(this,t);if(n<0)return null;i=t+n,a=i+o}else if(n===b.ANCHOR_BOTH){if(e.endPos()!==o||e.index(this,0)!==0)return null;i=0,a=o}else if(n===b.ANCHOR_START){if(e.index(this,0)!==0)return null;i=0,a=o}if(i<0)return null;if(r>0){let e=new Int32Array(r).fill(-1);return e[0]=i,e[1]=a,Array.from(e)}return[]}executeEngine(e,t,n,r){if(this.prefixComplete&&(r===0||this.numSubexp===0))return this.matchPrefixComplete(e,t,n,r);if(this.prefilter!==null&&n===b.UNANCHORED&&!this.prefilter.eval(e,t))return null;if(this.onepass!==null)return Ar.execute(this,e,t,n,r);if(r>0)return this.prog.numLb===0&&e.endPos()<=Cr.maxBitStateLen(this.prog)?Cr.execute(this,e,t,n,r):this.doExecuteNFA(e,t,n,r);if(this.prog.numLb===0){let i=this.dfa.match(e,t,n);if(i!==null)return i?[]:null;if(e.endPos()<=Cr.maxBitStateLen(this.prog))return Cr.execute(this,e,t,n,r)}return this.doExecuteNFA(e,t,n,r)}numberOfCapturingGroups(){return this.numSubexp}numberOfInstructions(){return this.prog.numInst()}get(){return this.machinePool.length>0?this.machinePool.pop():null}reset(){this.machinePool.length=0}put(e){this.machinePool.push(e)}toString(){return this.expr}doExecuteNFA(e,t,n,r){let i=this.get();i||=fr.fromRE2(this),i.init(r);let a=i.match(e,t,n)?i.submatches():null;return this.put(i),a}match(e){return this.executeEngine(E.fromUTF16(e),0,b.UNANCHORED,0)!==null}matchWithGroup(e,t,n,r,i){return e instanceof Qn||(e=T.isByteArray(e)?tr.utf8(e):tr.utf16(e)),this.matchMachineInput(e,t,n,r,i)}matchMachineInput(e,t,n,r,i){if(t>n)return[!1,null];let a=e.isUTF16Encoding()?E.fromUTF16(e.asCharSequence(),0,n):E.fromUTF8(e.asBytes(),0,n),o=this.executeEngine(a,t,r,2*i);return o===null?[!1,null]:[!0,o]}matchUTF8(e){return this.executeEngine(E.fromUTF8(e),0,b.UNANCHORED,0)!==null}replaceAll(e,t){return this.replaceAllFunc(e,()=>t,2*e.length+1)}replaceFirst(e,t){return this.replaceAllFunc(e,()=>t,1)}replaceAllFunc(e,t,n){let r=0,i=0,a=``,o=E.fromUTF16(e),s=0;for(;i<=e.length;){let c=this.executeEngine(o,i,b.UNANCHORED,2);if(c===null||c.length===0)break;a+=e.substring(r,c[0]),(c[1]>r||c[0]===0)&&(a+=t(e.substring(c[0],c[1])),s++),r=c[1];let l=o.step(i)&7;if(i+l>c[1]?i+=l:i+1>c[1]?i++:i=c[1],s>=n)break}return a+=e.substring(r),a}pad(e){if(e===null)return null;let t=(1+this.numSubexp)*2;if(e.length<t){let n=Array(t).fill(-1);for(let t=0;t<e.length;t++)n[t]=e[t];e=n}return e}allMatches(e,t,n=e=>e){let r=[],i=e.endPos();t<0&&(t=i+1);let a=0,o=0,s=-1;for(;o<t&&a<=i;){let t=this.executeEngine(e,a,b.UNANCHORED,this.prog.numCap);if(t===null||t.length===0)break;let c=!0;if(t[1]===a){t[0]===s&&(c=!1);let n=e.step(a);n<0?a=i+1:a+=n&7}else a=t[1];s=t[1],c&&(r.push(n(this.pad(t))),o++)}return r}findUTF8(e){let t=this.executeEngine(E.fromUTF8(e),0,b.UNANCHORED,2);return t===null?null:e.slice(t[0],t[1])}findUTF8Index(e){let t=this.executeEngine(E.fromUTF8(e),0,b.UNANCHORED,2);return t===null?null:t.slice(0,2)}find(e){let t=this.executeEngine(E.fromUTF16(e),0,b.UNANCHORED,2);return t===null?``:e.substring(t[0],t[1])}findIndex(e){return this.executeEngine(E.fromUTF16(e),0,b.UNANCHORED,2)}findUTF8Submatch(e){let t=this.executeEngine(E.fromUTF8(e),0,b.UNANCHORED,this.prog.numCap);if(t===null)return null;let n=Array(1+this.numSubexp).fill(null);for(let r=0;r<n.length;r++)2*r<t.length&&t[2*r]>=0&&(n[r]=e.slice(t[2*r],t[2*r+1]));return n}findUTF8SubmatchIndex(e){return this.pad(this.executeEngine(E.fromUTF8(e),0,b.UNANCHORED,this.prog.numCap))}findSubmatch(e){let t=this.executeEngine(E.fromUTF16(e),0,b.UNANCHORED,this.prog.numCap);if(t===null)return null;let n=Array(1+this.numSubexp).fill(null);for(let r=0;r<n.length;r++)2*r<t.length&&t[2*r]>=0&&(n[r]=e.substring(t[2*r],t[2*r+1]));return n}findSubmatchIndex(e){return this.pad(this.executeEngine(E.fromUTF16(e),0,b.UNANCHORED,this.prog.numCap))}findAllUTF8(e,t){let n=this.allMatches(E.fromUTF8(e),t,t=>e.slice(t[0],t[1]));return n.length===0?null:n}findAllUTF8Index(e,t){let n=this.allMatches(E.fromUTF8(e),t,e=>e.slice(0,2));return n.length===0?null:n}findAll(e,t){let n=this.allMatches(E.fromUTF16(e),t,t=>e.substring(t[0],t[1]));return n.length===0?null:n}findAllIndex(e,t){let n=this.allMatches(E.fromUTF16(e),t,e=>e.slice(0,2));return n.length===0?null:n}findAllUTF8Submatch(e,t){let n=this.allMatches(E.fromUTF8(e),t,t=>
25{let n=Array(t.length/2|0).fill(null);for(let r=0;r<n.length;r++)t[2*r]>=0&&(n[r]=e.slice(t[2*r],t[2*r+1]));return n});return n.length===0?null:n}findAllUTF8SubmatchIndex(e,t){let n=this.allMatches(E.fromUTF8(e),t);return n.length===0?null:n}findAllSubmatch(e,t){let n=this.allMatches(E.fromUTF16(e),t,t=>{let n=Array(t.length/2|0).fill(null);for(let r=0;r<n.length;r++)t[2*r]>=0&&(n[r]=e.substring(t[2*r],t[2*r+1]));return n});return n.length===0?null:n}findAllSubmatchIndex(e,t){let n=this.allMatches(E.fromUTF16(e),t);return n.length===0?null:n}};(class e{static UNANCHORED=b.UNANCHORED;static ANCHOR_START=b.ANCHOR_START;static ANCHOR_BOTH=b.ANCHOR_BOTH;constructor(t=e.UNANCHORED,n=0,r=8388608){this.anchor=t,this.jsFlags=n,this.maxMem=r;let i=b.PERL;(n&Ln.DISABLE_UNICODE_GROUPS)!==0&&(i&=~b.UNICODE_GROUPS),(n&Ln.LOOKBEHINDS)!==0&&(i|=b.LOOKBEHIND),this.re2Flags=i,this.regexps=[],this.prog=null,this.dfa=null,this.dummyRe2=null}add(e){if(this.prog)throw new or(`Cannot add patterns after compile`);let t=e;(this.jsFlags&Ln.CASE_INSENSITIVE)!==0&&(t=`(?i)${t}`),(this.jsFlags&Ln.DOTALL)!==0&&(t=`(?s)${t}`),(this.jsFlags&Ln.MULTILINE)!==0&&(t=`(?m)${t}`);let n=ai.parse(t,this.re2Flags);return this.regexps.push(Lr.simplify(n)),this.regexps.length-1}compile(){this.prog||(this.prog=Ir.compileSet(this.regexps),this.dfa=new gr(this.prog,this.maxMem),this.dummyRe2={prog:this.prog,cond:this.prog.startCond(),prefix:``,prefixRune:0,longest:!1})}match(t){this.prog||this.compile();let n=T.isByteArray(t)?E.fromUTF8(t):E.fromUTF16(t),r=b.UNANCHORED;this.anchor===e.ANCHOR_START?r=b.ANCHOR_START:this.anchor===e.ANCHOR_BOTH&&(r=b.ANCHOR_BOTH);let i=this.dfa.matchSet(n,0,r);if(i!==null)return i;let a=fr.fromRE2(this.dummyRe2);return a.init(0),a.matchSet(n,0,r)}});var si=class e{static isHexadecimal(e){return`0`<=e&&e<=`9`||`A`<=e&&e<=`F`||`a`<=e&&e<=`f`}static translate(t){let n=``;if(t instanceof RegExp&&(t.ignoreCase&&(n+=`i`),t.multiline&&(n+=`m`),t.dotAll&&(n+=`s`),t=t.source),typeof t!=`string`)return t;let r=``,i=!1,a=t.length;a===0&&(r=`(?:)`,i=!0);let o=!1,s=0;for(;s<a;){let n=t[s];if(n===`\\`){if(s+1<a)switch(n=t[s+1],n){case`\\`:r+=`\\\\`,s+=2;continue;case`c`:if(s+2<a){let e=t[s+2].charCodeAt(0);if(e>=65&&e<=90||e>=97&&e<=122){let t=e%32;r+=`\\x`,r+=(t>>4).toString(16).toUpperCase(),r+=(t&15).toString(16).toUpperCase(),s+=3,i=!0;continue}}r+=`c`,s+=2,i=!0;continue;case`u`:if(s+2<a){if(t[s+2]===`{`){let n=s+3,o=!1,c=!1;for(;n<a;){let r=t[n];if(r===`}`){c=!0;break}if(!e.isHexadecimal(r))break;o=!0,n++}if(c&&o){r+=`\\x`,s+=2,i=!0;continue}}else if(s+5<a){let n=!0;for(let r=0;r<4;r++)if(!e.isHexadecimal(t[s+2+r])){n=!1;break}if(n){r+=`\\x{`+t.substring(s+2,s+6)+`}`,s+=6,i=!0;continue}}}r+=`u`,s+=2,i=!0;continue;case`x`:{let n=!1;if(s+2<a&&t[s+2]===`{`){let r=s+3,i=!1,o=!1;for(;r<a;){let n=t[r];if(n===`}`){o=!0;break}if(!e.isHexadecimal(n))break;i=!0,r++}o&&i&&(n=!0)}else s+3<a&&e.isHexadecimal(t[s+2])&&e.isHexadecimal(t[s+3])&&(n=!0);n?(r+=`\\x`,s+=2):(r+=`x`,s+=2,i=!0);continue}case`n`:case`r`:case`t`:case`a`:case`f`:case`v`:case`d`:case`D`:case`s`:case`S`:case`w`:case`W`:case`b`:case`B`:case`p`:case`P`:case`A`:case`z`:case`Q`:case`E`:case`0`:case`1`:case`2`:case`3`:case`4`:case`5`:case`6`:case`7`:r+=`\\`+n,s+=2;continue;default:{let e=t.codePointAt(s+1);if(e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122){let n=T.charCount(e);r+=t.substring(s+1,s+1+n),s+=n+1,i=!0}else{r+=`\\`;let n=T.charCount(e);r+=t.substring(s+1,s+1+n),s+=n+1}continue}}}else if(n===`/`){r+=`\\/`,s+=1,i=!0;continue}else if(n===`[`)o=!0;else if(n===`]`)o=!1;else if(!o&&n===`(`&&s+2<a&&t[s+1]===`?`&&t[s+2]===`<`&&s+3<a&&!`=!>)`.includes(t[s+3])){r+=`(?P<`,s+=3,i=!0;continue}let c=t.codePointAt(s),l=T.charCount(c);r+=t.substring(s,s+l),s+=l}let c=i?r:t;return n.length>0?`(?${n})${c}`:c}},ci=class e{static CASE_INSENSITIVE=Ln.CASE_INSENSITIVE;static DOTALL=Ln.DOTALL;static MULTILINE=Ln.MULTILINE;static DISABLE_UNICODE_GROUPS=Ln.DISABLE_UNICODE_GROUPS;static LONGEST_MATCH=Ln.LONGEST_MATCH;static LOOKBEHINDS=Ln.LOOKBEHINDS;static quote(e){return T.quoteMeta(e)}
25static quoteReplacement(e,t=!1){return ur.quoteReplacement(e,t)}static translateRegExp(e){return si.translate(e)}static compile(t,n=0){let r=t;if((n&e.CASE_INSENSITIVE)!==0&&(r=`(?i)${r}`),(n&e.DOTALL)!==0&&(r=`(?s)${r}`),(n&e.MULTILINE)!==0&&(r=`(?m)${r}`),(n&~(e.MULTILINE|e.DOTALL|e.CASE_INSENSITIVE|e.DISABLE_UNICODE_GROUPS|e.LONGEST_MATCH|e.LOOKBEHINDS))!==0)throw new cr(`Flags should only be a combination of MULTILINE, DOTALL, CASE_INSENSITIVE, DISABLE_UNICODE_GROUPS, LONGEST_MATCH, LOOKBEHINDS`);let i=b.PERL;(n&e.DISABLE_UNICODE_GROUPS)!==0&&(i&=~b.UNICODE_GROUPS),(n&e.LOOKBEHINDS)!==0&&(i|=b.LOOKBEHIND);let a=new e(t,n);return a.re2Input=oi.compileImpl(r,i,(n&e.LONGEST_MATCH)!==0),a}static matches(t,n){return e.compile(t).testExact(n)}static initTest(t,n,r){if(t==null)throw Error(`pattern is null`);if(r==null)throw Error(`re2 is null`);let i=new e(t,n);return i.re2Input=r,i}constructor(e,t){this.patternInput=e,this.flagsInput=t,this.re2Input=null}reset(){this.re2Input.reset()}flags(){return this.flagsInput}pattern(){return this.patternInput}re2(){return this.re2Input}matches(e){return this.testExact(e)}matcher(e){return T.isByteArray(e)&&(e=tr.utf8(e)),new ur(this,e)}test(e){return T.isByteArray(e)?this.re2Input.matchUTF8(e):this.re2Input.match(e)}testExact(e){let t=T.isByteArray(e)?E.fromUTF8(e):E.fromUTF16(e);return this.re2Input.executeEngine(t,0,b.ANCHOR_BOTH,0)!==null}exec(e){let t=this.matcher(e);if(!t.find())return null;let n=[t.group(0)];for(let e=1;e<=t.groupCount();e++){let r=t.group(e);n.push(r===null?void 0:r)}n.index=t.start(0),n.input=e;let r=this.namedGroups();if(Object.keys(r).length>0){let e=t.getNamedGroups();for(let t in e)e[t]===null&&(e[t]=void 0);n.groups=e}else n.groups=void 0;return n}split(e,t=0){let n=this.matcher(e),r=[],i=0,a=0;for(;n.find();){if(a===0&&n.end()===0){a=n.end();continue}if(t>0&&r.length===t-1)break;if(a===n.start()){if(t===0){i+=1,a=n.end();continue}}else for(;i>0;)r.push(``),--i;r.push(n.substring(a,n.start())),a=n.end()}if(t===0&&a!==n.inputLength()){for(;i>0;)r.push(``),--i;r.push(n.substring(a,n.inputLength()))}return(t!==0||r.length===0&&!(a===n.inputLength()&&a>0))&&r.push(n.substring(a,n.inputLength())),r}*matchAll(e){let t=this.matcher(e);for(;t.find();){let n=[t.group(0)];for(let e=1;e<=t.groupCount();e++){let r=t.group(e);n.push(r===null?void 0:r)}n.index=t.start(0),n.input=e;let r=this.namedGroups();if(Object.keys(r).length>0){let e=t.getNamedGroups();for(let t in e)e[t]===null&&(e[t]=void 0);n.groups=e}else n.groups=void 0;yield n}}toString(){return this.patternInput}programSize(){return this.re2Input.numberOfInstructions()}groupCount(){return this.re2Input.numberOfCapturingGroups()}namedGroups(){return this.re2Input.namedGroups}equals(e){return this===e?!0:e===null||this.constructor!==e.constructor?!1:this.flagsInput===e.flagsInput&&this.patternInput===e.patternInput}},li=`12.17.0`;function ui(e){li=e}var di=new We(`@firebase/firestore`);function fi(){return di.logLevel}function M(e,...t){if(di.logLevel<=_.DEBUG){let n=t.map(hi);di.debug(`Firestore (${li}): ${e}`,...n)}}function pi(e,...t){if(di.logLevel<=_.ERROR){let n=t.map(hi);di.error(`Firestore (${li}): ${e}`,...n)}}function mi(e,...t){if(di.logLevel<=_.WARN){let n=t.map(hi);di.warn(`Firestore (${li}): ${e}`,...n)}}function hi(e){if(typeof e==`string`)return e;try{return function(e){return JSON.stringify(e)}(e)}catch{return e}}function N(e,t,n){let r=`Unexpected state`;typeof t==`string`?r=t:n=t,gi(e,r,n)}function gi(e,t,n){let r=`FIRESTORE (${li}) INTERNAL ASSERTION FAILED: ${t} (ID: ${e.toString(16)})`;if(n!==void 0)try{r+=` CONTEXT: `+JSON.stringify(n)}catch{r+=` CONTEXT: `+n}throw pi(r),Error(r)}function P(e,t,n,r){let i=`Unexpected state`;typeof n==`string`?i=n:r=n,e||gi(t,i,r)}function F(e,t){return e}function _i(e){let t=typeof self<`u`&&(self.crypto||self.msCrypto),n=new Uint8Array(e);if(t&&typeof t.getRandomValues==`function`)t.getRandomValues(n);else for(let t=0;t<e;t++)n[t]=Math.floor(256*Math.random());return n}var vi=class{static newId(){let e=``;for(;e.length<20;){let t=_i(40);for(let n=0;n<t.length;++n)e.length<20&&t[n]<248&&(e+=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789`.charAt(t[n]%62))}return e}};function I(e,t){return e<t?-1:+(e>t)}function yi(e,t){let n=Math.min(e.length,t.length);for(let r=0;r<n;r++){let n=e.charAt(r),i=t.charAt(r);if(n!==i)return Si(n)===Si(i)?I(n,i):Si(n)?1:-1}return I(e.length,t.length)}var bi=55296,xi=57343;function Si(e){let t=e.charCodeAt(0);return t>=bi&&t<=xi}function Ci(e,t,n){return e.length===t.length&&e.every(((e,r)=>n(e,t[r])))}var L=class e{constructor(e,t){this.comparator=e,this.root=t||Ti.EMPTY}insert(t,n){return new e(this.comparator,this.root.insert(t,n,this.comparator).copy(null,null,Ti.BLACK,null,
vendor: 4,455 bytes, line 25
25null))}remove(t){return new e(this.comparator,this.root.remove(t,this.comparator).copy(null,null,Ti.BLACK,null,null))}get(e){let t=this.root;for(;!t.isEmpty();){let n=this.comparator(e,t.key);if(n===0)return t.value;n<0?t=t.left:n>0&&(t=t.right)}return null}indexOf(e){let t=0,n=this.root;for(;!n.isEmpty();){let r=this.comparator(e,n.key);if(r===0)return t+n.left.size;r<0?n=n.left:(t+=n.left.size+1,n=n.right)}return-1}isEmpty(){return this.root.isEmpty()}get size(){return this.root.size}minKey(){return this.root.minKey()}maxKey(){return this.root.maxKey()}inorderTraversal(e){return this.root.inorderTraversal(e)}forEach(e){this.inorderTraversal(((t,n)=>(e(t,n),!1)))}toString(){let e=[];return this.inorderTraversal(((t,n)=>(e.push(`${t}:${n}`),!1))),`{${e.join(`, `)}}`}reverseTraversal(e){return this.root.reverseTraversal(e)}getIterator(){return new wi(this.root,null,this.comparator,!1)}getIteratorFrom(e){return new wi(this.root,e,this.comparator,!1)}getReverseIterator(){return new wi(this.root,null,this.comparator,!0)}getReverseIteratorFrom(e){return new wi(this.root,e,this.comparator,!0)}},wi=class{constructor(e,t,n,r){this.isReverse=r,this.nodeStack=[];let i=1;for(;!e.isEmpty();)if(i=t?n(e.key,t):1,t&&r&&(i*=-1),i<0)e=this.isReverse?e.left:e.right;else{if(i===0){this.nodeStack.push(e);break}this.nodeStack.push(e),e=this.isReverse?e.right:e.left}}getNext(){let e=this.nodeStack.pop(),t={key:e.key,value:e.value};if(this.isReverse)for(e=e.left;!e.isEmpty();)this.nodeStack.push(e),e=e.right;else for(e=e.right;!e.isEmpty();)this.nodeStack.push(e),e=e.left;return t}hasNext(){return this.nodeStack.length>0}peek(){if(this.nodeStack.length===0)return null;let e=this.nodeStack[this.nodeStack.length-1];return{key:e.key,value:e.value}}},Ti=class e{constructor(t,n,r,i,a){this.key=t,this.value=n,this.color=r??e.RED,this.left=i??e.EMPTY,this.right=a??e.EMPTY,this.size=this.left.size+1+this.right.size}copy(t,n,r,i,a){return new e(t??this.key,n??this.value,r??this.color,i??this.left,a??this.right)}isEmpty(){return!1}inorderTraversal(e){return this.left.inorderTraversal(e)||e(this.key,this.value)||this.right.inorderTraversal(e)}reverseTraversal(e){return this.right.reverseTraversal(e)||e(this.key,this.value)||this.left.reverseTraversal(e)}min(){return this.left.isEmpty()?this:this.left.min()}minKey(){return this.min().key}maxKey(){return this.right.isEmpty()?this.key:this.right.maxKey()}insert(e,t,n){let r=this,i=n(e,r.key);return r=i<0?r.copy(null,null,null,r.left.insert(e,t,n),null):i===0?r.copy(null,t,null,null,null):r.copy(null,null,null,null,r.right.insert(e,t,n)),r.fixUp()}removeMin(){if(this.left.isEmpty())return e.EMPTY;let t=this;return t.left.isRed()||t.left.left.isRed()||(t=t.moveRedLeft()),t=t.copy(null,null,null,t.left.removeMin(),null),t.fixUp()}remove(t,n){let r,i=this;if(n(t,i.key)<0)i.left.isEmpty()||i.left.isRed()||i.left.left.isRed()||(i=i.moveRedLeft()),i=i.copy(null,null,null,i.left.remove(t,n),null);else{if(i.left.isRed()&&(i=i.rotateRight()),i.right.isEmpty()||i.right.isRed()||i.right.left.isRed()||(i=i.moveRedRight()),n(t,i.key)===0){if(i.right.isEmpty())return e.EMPTY;r=i.right.min(),i=i.copy(r.key,r.value,null,null,i.right.removeMin())}i=i.copy(null,null,null,null,i.right.remove(t,n))}return i.fixUp()}isRed(){return this.color}fixUp(){let e=this;return e.right.isRed()&&!e.left.isRed()&&(e=e.rotateLeft()),e.left.isRed()&&e.left.left.isRed()&&(e=e.rotateRight()),e.left.isRed()&&e.right.isRed()&&(e=e.colorFlip()),e}moveRedLeft(){let e=this.colorFlip();return e.right.left.isRed()&&(e=e.copy(null,null,null,null,e.right.rotateRight()),e=e.rotateLeft(),e=e.colorFlip()),e}moveRedRight(){let e=this.colorFlip();return e.left.left.isRed()&&(e=e.rotateRight(),e=e.colorFlip()),e}rotateLeft(){let t=this.copy(null,null,e.RED,null,this.right.left);return this.right.copy(null,null,this.color,t,null)}rotateRight(){let t=this.copy(null,null,e.RED,this.left.right,null);return this.left.copy(null,null,this.color,null,t)}colorFlip(){let e=this.left.copy(null,null,!this.left.color,null,null),t=this.right.copy(null,null,!this.right.color,null,null);return this.copy(null,null,!this.color,e,t)}checkMaxDepth(){return 2**this.check()<=this.size+1}check(){if(this.isRed()&&this.left.isRed())throw N(43730,{key:this.key,value:this.value});if(this.right.isRed())throw N(14113,{key:this.key,value:this.value});let e=this.left.check();if(e!==this.right.check())throw N(27949);return e+ +!this.isRed()}};
25Ti.EMPTY=null,Ti.RED=!0,Ti.BLACK=!1,Ti.EMPTY=new class{constructor(){this.size=0}get key(){throw N(57766)}get value(){throw N(16141)}get color(){throw N(16727)}get left(){throw N(29726)}get right(){throw N(36894)}copy(e,t,n,r,i){return this}insert(e,t,n){return new Ti(e,t)}remove(e,t){return this}isEmpty(){return!0}inorderTraversal(e){return!1}reverseTraversal(e){return!1}minKey(){return null}maxKey(){return null}isRed(){return!1}checkMaxDepth(){return!0}check(){return 0}};var Ei=class e{constructor(e){this.comparator=e,this.data=new L(this.comparator)}has(e){return this.data.get(e)!==null}first(){return this.data.minKey()}last(){return this.data.maxKey()}get size(){return this.data.size}indexOf(e){return this.data.indexOf(e)}forEach(e){this.data.inorderTraversal(((t,n)=>(e(t),!1)))}forEachInRange(e,t){let n=this.data.getIteratorFrom(e[0]);for(;n.hasNext();){let r=n.getNext();if(this.comparator(r.key,e[1])>=0)return;t(r.key)}}forEachWhile(e,t){let n;for(n=t===void 0?this.data.getIterator():this.data.getIteratorFrom(t);n.hasNext();)if(!e(n.getNext().key))return}firstAfterOrEqual(e){let t=this.data.getIteratorFrom(e);return t.hasNext()?t.getNext().key:null}getIterator(){return new Di(this.data.getIterator())}getIteratorFrom(e){return new Di(this.data.getIteratorFrom(e))}add(e){return this.copy(this.data.remove(e).insert(e,!0))}delete(e){return this.has(e)?this.copy(this.data.remove(e)):this}isEmpty(){return this.data.isEmpty()}unionWith(e){let t=this;return t.size<e.size&&(t=e,e=this),e.forEach((e=>{t=t.add(e)})),t}isEqual(t){if(!(t instanceof e)||this.size!==t.size)return!1;let n=this.data.getIterator(),r=t.data.getIterator();for(;n.hasNext();){let e=n.getNext().key,t=r.getNext().key;if(this.comparator(e,t)!==0)return!1}return!0}toArray(){let e=[];return this.forEach((t=>{e.push(t)})),e}toString(){let e=[];return this.forEach((t=>e.push(t))),`SortedSet(`+e.toString()+`)`}copy(t){let n=new e(this.comparator);return n.data=t,n}},Di=class{constructor(e){this.iter=e}getNext(){return this.iter.getNext().key}hasNext(){return this.iter.hasNext()}},R={OK:`ok`,CANCELLED:`cancelled`,UNKNOWN:`unknown`,INVALID_ARGUMENT:`invalid-argument`,DEADLINE_EXCEEDED:`deadline-exceeded`,NOT_FOUND:`not-found`,ALREADY_EXISTS:`already-exists`,PERMISSION_DENIED:`permission-denied`,UNAUTHENTICATED:`unauthenticated`,RESOURCE_EXHAUSTED:`resource-exhausted`,FAILED_PRECONDITION:`failed-precondition`,ABORTED:`aborted`,OUT_OF_RANGE:`out-of-range`,UNIMPLEMENTED:`unimplemented`,INTERNAL:`internal`,UNAVAILABLE:`unavailable`,DATA_LOSS:`data-loss`},z=class extends pe{constructor(e,t){super(e,t),this.code=e,this.message=t,this.toString=()=>`${this.name}: [code=${this.code}]: ${this.message}`}},Oi=`__name__`,ki=class e{constructor(e,t,n){t===void 0?t=0:t>e.length&&N(637,{offset:t,range:e.length}),n===void 0?n=e.length-t:n>e.length-t&&N(1746,{length:n,range:e.length-t}),this.segments=e,this.offset=t,this.len=n}get length(){return this.len}isEqual(t){return e.comparator(this,t)===0}child(t){let n=this.segments.slice(this.offset,this.limit());return t instanceof e?t.forEach((e=>{n.push(e)})):n.push(t),this.construct(n)}limit(){return this.offset+this.length}popFirst(e){return e=e===void 0?1:e,this.construct(this.segments,this.offset+e,this.length-e)}popLast(){return this.construct(this.segments,this.offset,this.length-1)}firstSegment(){return this.segments[this.offset]}lastSegment(){return this.get(this.length-1)}get(e){return this.segments[this.offset+e]}isEmpty(){return this.length===0}isPrefixOf(e){if(e.length<this.length)return!1;for(let t=0;t<this.length;t++)if(this.get(t)!==e.get(t))return!1;return!0}isImmediateParentOf(e){if(this.length+1!==e.length)return!1;for(let t=0;t<this.length;t++)if(this.get(t)!==e.get(t))return!1;return!0}forEach(e){for(let t=this.offset,n=this.limit();t<n;t++)e(this.segments[t])}toArray(){return this.segments.slice(this.offset,this.limit())}static comparator(t,n){let r=Math.min(t.length,n.length);for(let i=0;i<r;i++){let r=e.compareSegments(t.get(i),n.get(i));if(r!==0)return r}return I(t.length,n.length)}static compareSegments(t,n){let r=e.isNumericId(t),i=e.isNumericId(n);return r&&!i?-1:!r&&i?1:r&&i?e.extractNumericId(t).compare(e.extractNumericId(n)):yi(t,n)}static isNumericId(e){return e.startsWith(`__id`)&&e.endsWith(`__`)}static extractNumericId(e){return Tn.fromString(e.substring(4,e.length-2))}},B=class e extends ki{construct(t,n,r){return new e(t,n,r)}canonicalString(){return this.toArray().join(`/`)}toString(){return this.canonicalString()}toStringWithLeadingSlash(){return`/${this.canonicalString()}`}
vendor: 5,971 bytes, line 25
25toUriEncodedString(){return this.toArray().map(encodeURIComponent).join(`/`)}static fromString(...t){let n=[];for(let e of t){if(e.indexOf(`//`)>=0)throw new z(R.INVALID_ARGUMENT,`Invalid segment (${e}). Paths must not contain // in them.`);n.push(...e.split(`/`).filter((e=>e.length>0)))}return new e(n)}static emptyPath(){return new e([])}},Ai=/^[_a-zA-Z][_a-zA-Z0-9]*$/,ji=class e extends ki{construct(t,n,r){return new e(t,n,r)}static isValidIdentifier(e){return Ai.test(e)}canonicalString(){return this.toArray().map((t=>(t=t.replace(/\\/g,`\\\\`).replace(/`/g,"\\`"),e.isValidIdentifier(t)||(t="`"+t+"`"),t))).join(`.`)}toString(){return this.canonicalString()}isKeyField(){return this.length===1&&this.get(0)===Oi}static keyField(){return new e([Oi])}static fromServerFormat(t){let n=[],r=``,i=0,a=()=>{if(r.length===0)throw new z(R.INVALID_ARGUMENT,`Invalid field path (${t}). Paths must not be empty, begin with '.', end with '.', or contain '..'`);n.push(r),r=``},o=!1;for(;i<t.length;){let e=t[i];if(e===`\\`){if(i+1===t.length)throw new z(R.INVALID_ARGUMENT,`Path has trailing escape character: `+t);let e=t[i+1];if(e!==`\\`&&e!==`.`&&e!=="`")throw new z(R.INVALID_ARGUMENT,`Path has invalid escape sequence: `+t);r+=e,i+=2}else e==="`"?(o=!o,i++):e!==`.`||o?(r+=e,i++):(a(),i++)}if(a(),o)throw new z(R.INVALID_ARGUMENT,"Unterminated ` in path: "+t);return new e(n)}static emptyPath(){return new e([])}},Mi=class e{constructor(e){this.fields=e,e.sort(ji.comparator)}static empty(){return new e([])}unionWith(t){let n=new Ei(ji.comparator);for(let e of this.fields)n=n.add(e);for(let e of t)n=n.add(e);return new e(n.toArray())}covers(e){for(let t of this.fields)if(t.isPrefixOf(e))return!0;return!1}isEqual(e){return Ci(this.fields,e.fields,((e,t)=>e.isEqual(t)))}};function Ni(e){let t=0;for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t++;return t}function Pi(e,t){for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t(n,e[n])}function Fi(e,t){let n=[];for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.push(t(e[r],r,e));return n}function Ii(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!1;return!0}var V=class e{constructor(e){this.path=e}static fromPath(t){return new e(B.fromString(t))}static fromName(t){return new e(B.fromString(t).popFirst(5))}static empty(){return new e(B.emptyPath())}get collectionGroup(){return this.path.popLast().lastSegment()}hasCollectionId(e){return this.path.length>=2&&this.path.get(this.path.length-2)===e}getCollectionGroup(){return this.path.get(this.path.length-2)}getCollectionPath(){return this.path.popLast()}isEqual(e){return e!==null&&B.comparator(this.path,e.path)===0}toString(){return this.path.toString()}static comparator(e,t){return B.comparator(e.path,t.path)}static isDocumentKey(e){return e.length%2==0}static fromSegments(t){return new e(new B(t.slice()))}};function Li(e,t,n){if(!n)throw new z(R.INVALID_ARGUMENT,`Function ${e}() cannot be called with an empty ${t}.`)}function Ri(e,t,n,r){if(!0===t&&!0===r)throw new z(R.INVALID_ARGUMENT,`${e} and ${n} cannot be used together.`)}function zi(e){if(!V.isDocumentKey(e))throw new z(R.INVALID_ARGUMENT,`Invalid document reference. Document references must have an even number of segments, but ${e} has ${e.length}.`)}function Bi(e){return typeof e==`object`&&!!e&&(Object.getPrototypeOf(e)===Object.prototype||Object.getPrototypeOf(e)===null)}function Vi(e){if(e===void 0)return`undefined`;if(e===null)return`null`;if(typeof e==`string`)return e.length>20&&(e=`${e.substring(0,20)}...`),JSON.stringify(e);if(typeof e==`number`||typeof e==`boolean`)return``+e;if(typeof e==`object`){if(e instanceof Array)return`an array`;{let t=function(e){return e.constructor?e.constructor.name:null}(e);return t?`a custom ${t} object`:`an object`}}return typeof e==`function`?`a function`:N(12329,{type:typeof e})}function Hi(e,t){if(`_delegate`in e&&(e=e._delegate),!(e instanceof t)){if(t.name===e.constructor.name)throw new z(R.INVALID_ARGUMENT,`Type does not match the expected instance. Did you pass a reference from a different Firestore SDK?`);{let n=Vi(e);throw new z(R.INVALID_ARGUMENT,`Expected type '${t.name}', but it was: ${n}`)}}return e}function H(e,t){let n={typeString:e};return t&&(n.value=t),n}function Ui(e,t){if(!Bi(e))throw new z(R.INVALID_ARGUMENT,`JSON must be an object`);let n;for(let r in t)if(t[r]){let i=t[r].typeString,a=`value`in t[r]?{value:t[r].value}:void 0;if(!(r in e)){n=`JSON missing required field: '${r}'`;break}let o=e[r];if(i&&typeof o!==i){n=`JSON field '${r}' must be a ${i}.`;break}if(a!==void 0&&o!==a.value){n=`Expected '${r}' field to equal '${a.value}'`;break}}if(n)throw new z(R.INVALID_ARGUMENT,n);return!0}var Wi=-62135596800,Gi=1e6,Ki=class e{static now(){return e.fromMillis(Date.now())}static fromDate(t){return e.fromMillis(t.getTime())}static fromMillis(t){let n=Math.floor(t/1e3),r=Math.floor((t-1e3*n)*Gi);return new e(n,r)}constructor(e,t){if(this.seconds=e,this.nanoseconds=t,t<0||t>=1e9)throw new z(R.INVALID_ARGUMENT,`Timestamp nanoseconds out of range: `+t);if(e<Wi||e>=253402300800)throw new z(R.INVALID_ARGUMENT,`Timestamp seconds out of range: `+e)}toDate(){return new Date(this.toMillis())}toMillis(){return 1e3*this.seconds+this.nanoseconds/Gi}_compareTo(e){return this.seconds===e.seconds?I(this.nanoseconds,e.nanoseconds):I(this.seconds,e.seconds)}isEqual(e){return e.seconds===this.seconds&&e.nanoseconds===this.nanoseconds}toString(){return`Timestamp(seconds=`+this.seconds+`, nanoseconds=`+this.nanoseconds+`)`}toJSON(){return{type:e._jsonSchemaVersion,seconds:this.seconds,nanoseconds:this.nanoseconds}}static fromJSON(t){if(Ui(t,e._jsonSchema))return new e(t.seconds,t.nanoseconds)}valueOf(){let e=this.seconds-Wi;return String(e).padStart(12,`0`)+`.`+String(this.nanoseconds).padStart(9,`0`)}};Ki._jsonSchemaVersion=`firestore/timestamp/1.0`,Ki._jsonSchema={type:H(`string`,Ki._jsonSchemaVersion),seconds:H(`number`),nanoseconds:H(`number`)};
25var qi=class extends Error{constructor(){super(...arguments),this.name=`Base64DecodeError`}},Ji=class e{constructor(e){this.binaryString=e}static fromBase64String(t){let n=function(e){try{return atob(e)}catch(e){throw typeof DOMException<`u`&&e instanceof DOMException?new qi(`Invalid base64 string: `+e):e}}(t);return new e(n)}static fromUint8Array(t){let n=function(e){let t=``;for(let n=0;n<e.length;++n)t+=String.fromCharCode(e[n]);return t}(t);return new e(n)}[Symbol.iterator](){let e=0;return{next:()=>e<this.binaryString.length?{value:this.binaryString.charCodeAt(e++),done:!1}:{value:void 0,done:!0}}}toBase64(){return function(e){return btoa(e)}(this.binaryString)}toUint8Array(){return function(e){let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}(this.binaryString)}approximateByteSize(){return 2*this.binaryString.length}compareTo(e){return I(this.binaryString,e.binaryString)}isEqual(e){return this.binaryString===e.binaryString}};Ji.EMPTY_BYTE_STRING=new Ji(``);var Yi=new RegExp(/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d(?:\.(\d+))?Z$/);function Xi(e){if(P(!!e,39018),typeof e==`string`){let t=0,n=Yi.exec(e);if(P(!!n,46558,{timestamp:e}),n[1]){let e=n[1];e=(e+`000000000`).substr(0,9),t=Number(e)}let r=new Date(e);return{seconds:Math.floor(r.getTime()/1e3),nanos:t}}return{seconds:U(e.seconds),nanos:U(e.nanos)}}function U(e){return typeof e==`number`?e:typeof e==`string`?Number(e):0}function Zi(e){return typeof e==`string`?Ji.fromBase64String(e):Ji.fromUint8Array(e)}var Qi=`server_timestamp`,$i=`__type__`,ea=`__previous_value__`,ta=`__local_write_time__`;function na(e){return(e?.mapValue?.fields||{})[$i]?.stringValue===Qi}function ra(e){let t=e.mapValue.fields[ea];return na(t)?ra(t):t}function ia(e){let t=Xi(e.mapValue.fields[ta].timestampValue);return new Ki(t.seconds,t.nanos)}var aa=class{constructor(e,t,n,r,i,a,o,s,c,l,u,d,f){this.databaseId=e,this.appId=t,this.persistenceKey=n,this.host=r,this.ssl=i,this.forceLongPolling=a,this.autoDetectLongPolling=o,this.longPollingOptions=s,this.useFetchStreams=c,this.isUsingEmulator=l,this.apiKey=u,this._customHeaders=d,this.grpcFlowControlWindow=f}},oa=`(default)`,sa=class e{constructor(e,t){this.projectId=e,this.database=t||oa}static empty(){return new e(``,``)}get isDefaultDatabase(){return this.database===oa}isEqual(t){return t instanceof e&&t.projectId===this.projectId&&t.database===this.database}};function ca(e,t){if(!Object.prototype.hasOwnProperty.apply(e.options,[`projectId`]))throw new z(R.INVALID_ARGUMENT,`"projectId" not provided in firebase.initializeApp.`);return new sa(e.options.projectId,t)}var la=-1;function ua(e){return e==null}function da(e){return e===0&&1/e==-1/0}function fa(e){return typeof e==`number`&&Number.isInteger(e)&&!da(e)&&e<=2**53-1&&e>=-(2**53-1)}function pa(e){return typeof e==`string`}var ma=`__type__`,ha=`__max__`,ga={mapValue:{fields:{__type__:{stringValue:ha}}}},_a=`__vector__`,va=`value`,ya={nullValue:`NULL_VALUE`},ba={booleanValue:!0},xa={booleanValue:!1};function W(e){return`nullValue`in e?0:`booleanValue`in e?1:`integerValue`in e||`doubleValue`in e?2:`timestampValue`in e?3:`stringValue`in e?5:`bytesValue`in e?6:`referenceValue`in e?7:`geoPointValue`in e?8:`arrayValue`in e?9:`mapValue`in e?na(e)?4:Ba(e)?9007199254740991:La(e)?10:11:N(28295,{value:e})}function Sa(e,t,n){if(e===t)return!0;let r=W(e);if(r!==W(t))return!1;switch(r){case 0:case 9007199254740991:return!0;case 1:return e.booleanValue===t.booleanValue;case 4:return ia(e).isEqual(ia(t));case 3:return function(e,t){if(typeof e.timestampValue==`string`&&typeof t.timestampValue==`string`&&e.timestampValue.length===t.timestampValue.length)return e.timestampValue===t.timestampValue;let n=Xi(e.timestampValue),r=Xi(t.timestampValue);return n.seconds===r.seconds&&n.nanos===r.nanos}(e,t);case 5:return e.stringValue===t.stringValue;case 6:return function(e,t){return Zi(e.bytesValue).isEqual(Zi(t.bytesValue))}(e,t);case 7:return e.referenceValue===t.referenceValue;case 8:return function(e,t){return U(e.geoPointValue.latitude)===U(t.geoPointValue.latitude)&&U(e.geoPointValue.longitude)===U(t.geoPointValue.longitude)}(e,t);case 2:return function(e,t,n){if(`integerValue`in e&&`integerValue`in t)return U(e.integerValue)===U(t.integerValue);let r,i;if(`doubleValue`in e&&`doubleValue`in t)r=U(e.doubleValue),i=U(t.doubleValue);else{if(!n?.t)return!1;r=U(e.integerValue??e.doubleValue),i=U(t.integerValue??t.doubleValue)}return r===i?!!n?.i||da(r)===da(i):!!(n===void 0||n.o)&&isNaN(r)&&isNaN(i)}
25(e,t,n);case 9:return Ci(e.arrayValue.values||[],t.arrayValue.values||[],((e,t)=>Sa(e,t,n)));case 10:case 11:return function(e,t,n){let r=e.mapValue.fields||{},i=t.mapValue.fields||{};if(Ni(r)!==Ni(i))return!1;for(let e in r)if(r.hasOwnProperty(e)&&(i[e]===void 0||!Sa(r[e],i[e],n)))return!1;return!0}(e,t,n);default:return N(52216,{left:e})}}function Ca(e,t){return(e.values||[]).find((e=>Sa(e,t)))!==void 0}function wa(e,t){if(e===t)return 0;let n=W(e),r=W(t);if(n!==r)return I(n,r);switch(n){case 0:case 9007199254740991:return 0;case 1:return I(e.booleanValue,t.booleanValue);case 2:return function(e,t){let n=U(e.integerValue||e.doubleValue),r=U(t.integerValue||t.doubleValue);return n<r?-1:n>r?1:n===r?0:isNaN(n)?isNaN(r)?0:-1:1}(e,t);case 3:return Ta(e.timestampValue,t.timestampValue);case 4:return Ta(ia(e),ia(t));case 5:return yi(e.stringValue,t.stringValue);case 6:return function(e,t){let n=Zi(e),r=Zi(t);return n.compareTo(r)}(e.bytesValue,t.bytesValue);case 7:return function(e,t){let n=e.split(`/`),r=t.split(`/`);for(let e=0;e<n.length&&e<r.length;e++){let t=I(n[e],r[e]);if(t!==0)return t}return I(n.length,r.length)}(e.referenceValue,t.referenceValue);case 8:return function(e,t){let n=I(U(e.latitude),U(t.latitude));return n===0?I(U(e.longitude),U(t.longitude)):n}(e.geoPointValue,t.geoPointValue);case 9:return Ea(e.arrayValue,t.arrayValue);case 10:return function(e,t){let n=e.fields||{},r=t.fields||{},i=n[va]?.arrayValue,a=r[va]?.arrayValue,o=I(i?.values?.length||0,a?.values?.length||0);return o===0?Ea(i,a):o}(e.mapValue,t.mapValue);case 11:return function(e,t){if(e===ga.mapValue&&t===ga.mapValue)return 0;if(e===ga.mapValue)return 1;if(t===ga.mapValue)return-1;let n=e.fields||{},r=Object.keys(n),i=t.fields||{},a=Object.keys(i);r.sort(),a.sort();for(let e=0;e<r.length&&e<a.length;++e){let t=yi(r[e],a[e]);if(t!==0)return t;let o=wa(n[r[e]],i[a[e]]);if(o!==0)return o}return I(r.length,a.length)}(e.mapValue,t.mapValue);default:throw N(23264,{u:n})}}function Ta(e,t){if(typeof e==`string`&&typeof t==`string`&&e.length===t.length)return I(e,t);let n=Xi(e),r=Xi(t),i=I(n.seconds,r.seconds);return i===0?I(n.nanos,r.nanos):i}function Ea(e,t){let n=e.values||[],r=t.values||[];for(let e=0;e<n.length&&e<r.length;++e){let t=wa(n[e],r[e]);if(t!==void 0&&t!==0)return t}return I(n.length,r.length)}function Da(e){return Oa(e)}function Oa(e){return`nullValue`in e?`null`:`booleanValue`in e?``+e.booleanValue:`integerValue`in e?``+e.integerValue:`doubleValue`in e?``+e.doubleValue:`timestampValue`in e?function(e){let t=Xi(e);return`time(${t.seconds},${t.nanos})`}(e.timestampValue):`stringValue`in e?e.stringValue:`bytesValue`in e?function(e){return Zi(e).toBase64()}(e.bytesValue):`referenceValue`in e?function(e){return V.fromName(e).toString()}(e.referenceValue):`geoPointValue`in e?function(e){return`geo(${e.latitude},${e.longitude})`}(e.geoPointValue):`arrayValue`in e?function(e){let t=`[`,n=!0;for(let r of e.values||[])n?n=!1:t+=`,`,t+=Oa(r);return t+`]`}(e.arrayValue):`mapValue`in e?function(e){let t=Object.keys(e.fields||{}).sort(),n=`{`,r=!0;for(let i of t)r?r=!1:n+=`,`,n+=`${i}:${Oa(e.fields[i])}`;return n+`}`}(e.mapValue):N(61005,{value:e})}function ka(e){switch(W(e)){case 0:case 1:return 4;case 2:return 8;case 3:case 8:return 16;case 4:let t=ra(e);return t?16+ka(t):16;case 5:return 2*e.stringValue.length;case 6:return Zi(e.bytesValue).approximateByteSize();case 7:return e.referenceValue.length;case 9:return function(e){return(e.values||[]).reduce(((e,t)=>e+ka(t)),0)}(e.arrayValue);case 10:case 11:return function(e){let t=0;return Pi(e.fields,((e,n)=>{t+=e.length+ka(n)})),t}(e.mapValue);default:throw N(13486,{value:e})}}function Aa(e){return!!e&&`integerValue`in e}function ja(e){return!!e&&`doubleValue`in e}function Ma(e){return Aa(e)||ja(e)}function Na(e){return!!e&&`arrayValue`in e}function Pa(e){return!!e&&`nullValue`in e}function Fa(e){return!!e&&`doubleValue`in e&&isNaN(Number(e.doubleValue))}function Ia(e){return!!e&&`mapValue`in e}function La(e){return(e?.mapValue?.fields||{})[ma]?.stringValue===_a}function Ra(e){return(e?.mapValue?.fields||{})[va]?.arrayValue}function za(e){if(e.geoPointValue)return{geoPointValue:{...e.geoPointValue}};if(e.timestampValue&&typeof e.timestampValue==`object`)return{timestampValue:{...e.timestampValue}};if(e.mapValue){let t={mapValue:{fields:{}}};return Pi(e.mapValue.fields,((e,n)=>t.mapValue.fields[e]=za(n))),t}if(e.arrayValue){let t={arrayValue:{values:[]}};for(let n=0;n<(e.arrayValue.values||[]).length;++n)t.arrayValue.values[n]=za(e.arrayValue.values[n]);return t}return{...e}}function Ba(e){return(((e.mapValue||{}).fields||{}).__type__||{}).stringValue===ha}var Va=class e{constructor(e){this.value=e}static empty(){return new e({mapValue:{}})}field(e){if(e.isEmpty())return this.value;{let t=this.value;for(let n=0;n<e.length-1;++n)if(t=(t.mapValue.fields||{})[e.get(n)],!Ia(t))return null;return t=(t.mapValue.fields||{})[e.lastSegment()],t||null}}set(e,t){this.getFieldsMap(e.popLast())[e.lastSegment()]=za(t)}setAll(e){let t=ji.emptyPath(),n={},r=[];e.forEach(((e,i)=>{if(!t.isImmediateParentOf(i)){let e=this.getFieldsMap(t);this.applyChanges(e,n,r),n={},r=[],t=i.popLast()}e?n[i.lastSegment()]=za(e):r.push(i.lastSegment())}
25));let i=this.getFieldsMap(t);this.applyChanges(i,n,r)}delete(e){let t=this.field(e.popLast());Ia(t)&&t.mapValue.fields&&delete t.mapValue.fields[e.lastSegment()]}isEqual(e){return Sa(this.value,e.value)}getFieldsMap(e){let t=this.value;t.mapValue.fields||(t.mapValue={fields:{}});for(let n=0;n<e.length;++n){let r=t.mapValue.fields[e.get(n)];Ia(r)&&r.mapValue.fields||(r={mapValue:{fields:{}}},t.mapValue.fields[e.get(n)]=r),t=r}return t.mapValue.fields}applyChanges(e,t,n){Pi(t,((t,n)=>e[t]=n));for(let t of n)delete e[t]}clone(){return new e(za(this.value))}};function Ha(e){let t=[];return Pi(e.fields,((e,n)=>{let r=new ji([e]);if(Ia(n)){let e=Ha(n.mapValue).fields;if(e.length===0)t.push(r);else for(let n of e)t.push(r.child(n))}else t.push(r)})),new Mi(t)}function Ua(e,t){if(e.useProto3Json){if(isNaN(t))return{doubleValue:`NaN`};if(t===1/0)return{doubleValue:`Infinity`};if(t===-1/0)return{doubleValue:`-Infinity`}}return{doubleValue:da(t)?`-0`:t}}function Wa(e){return{integerValue:``+e}}function Ga(e,t,n){return fa(t)?Wa(t):Ua(e,t)}var Ka=class{constructor(){this._=void 0}};function qa(e,t,n){return e instanceof Xa?function(e,t){let n={fields:{[$i]:{stringValue:Qi},[ta]:{timestampValue:{seconds:e.seconds,nanos:e.nanoseconds}}}};return t&&na(t)&&(t=ra(t)),t&&(n.fields[ea]=t),{mapValue:n}}(n,t):e instanceof Za?Qa(e,t):e instanceof $a?eo(e,t):e instanceof no?function(e,t){let n=Ya(e,t),r=oo(n)+oo(e.l);return Aa(n)&&Aa(e.l)?Wa(r):Ua(e.serializer,r)}(e,t):e instanceof ro?function(e,t){return ao(e,t,Math.min)}(e,t):e instanceof io?function(e,t){return ao(e,t,Math.max)}(e,t):void 0}function Ja(e,t,n){return e instanceof Za?Qa(e,t):e instanceof $a?eo(e,t):n}function Ya(e,t){return e instanceof no?Ma(t)?t:{integerValue:0}:null}
25var Xa=class extends Ka{},Za=class extends Ka{constructor(e){super(),this.elements=e}};function Qa(e,t){let n=so(t);for(let t of e.elements)n.some((e=>Sa(e,t)))||n.push(t);return{arrayValue:{values:n}}}var $a=class extends Ka{constructor(e){super(),this.elements=e}};function eo(e,t){let n=so(t);for(let t of e.elements)n=n.filter((e=>!Sa(e,t)));return{arrayValue:{values:n}}}var to=class extends Ka{constructor(e,t){super(),this.serializer=e,this.l=t}},no=class extends to{},ro=class extends to{},io=class extends to{};function ao(e,t,n){if(!Ma(t))return e.l;let r=n(oo(t),oo(e.l));return Aa(t)&&Aa(e.l)?Wa(r):Ua(e.serializer,r)}function oo(e){return U(e.integerValue||e.doubleValue)}function so(e){return Na(e)&&e.arrayValue.values?e.arrayValue.values.slice():[]}function co(e,t){return e.field.isEqual(t.field)&&function(e,t){return e instanceof Za&&t instanceof Za||e instanceof $a&&t instanceof $a?Ci(e.elements,t.elements,Sa):e instanceof no&&t instanceof no||e instanceof ro&&t instanceof ro||e instanceof io&&t instanceof io?Sa(e.l,t.l):e instanceof Xa&&t instanceof Xa}(e.transform,t.transform)}var lo=class{constructor(e,t){this.version=e,this.transformResults=t}},uo=class e{constructor(e,t){this.updateTime=e,this.exists=t}static none(){return new e}static exists(t){return new e(void 0,t)}static updateTime(t){return new e(t)}get isNone(){return this.updateTime===void 0&&this.exists===void 0}isEqual(e){return this.exists===e.exists&&(this.updateTime?!!e.updateTime&&this.updateTime.isEqual(e.updateTime):!e.updateTime)}};function fo(e,t){return e.updateTime===void 0?e.exists===void 0||e.exists===t.isFoundDocument():t.isFoundDocument()&&t.version.isEqual(e.updateTime)}var po=class{};function mo(e,t){if(!e.hasLocalMutations||t&&t.fields.length===0)return null;if(t===null)return e.isNoDocument()?new wo(e.key,uo.none()):new yo(e.key,e.data,uo.none());{let n=e.data,r=Va.empty(),i=new Ei(ji.comparator);for(let e of t.fields)if(!i.has(e)){let t=n.field(e);t===null&&e.length>1&&(e=e.popLast(),t=n.field(e)),t===null?r.delete(e):r.set(e,t),i=i.add(e)}return new bo(e.key,r,new Mi(i.toArray()),uo.none())}}function ho(e,t,n){e instanceof yo?function(e,t,n){let r=e.value.clone(),i=So(e.fieldTransforms,t,n.transformResults);r.setAll(i),t.convertToFoundDocument(n.version,r).setHasCommittedMutations()}(e,t,n):e instanceof bo?function(e,t,n){if(!fo(e.precondition,t))return void t.convertToUnknownDocument(n.version);let r=So(e.fieldTransforms,t,n.transformResults),i=t.data;i.setAll(xo(e)),i.setAll(r),t.convertToFoundDocument(n.version,i).setHasCommittedMutations()}(e,t,n):function(e,t,n){t.convertToNoDocument(n.version).setHasCommittedMutations()}(0,t,n)}function go(e,t,n,r){return e instanceof yo?function(e,t,n,r){if(!fo(e.precondition,t))return n;let i=e.value.clone(),a=Co(e.fieldTransforms,r,t);return i.setAll(a),t.convertToFoundDocument(t.version,i).setHasLocalMutations(),null}(e,t,n,r):e instanceof bo?function(e,t,n,r){if(!fo(e.precondition,t))return n;let i=Co(e.fieldTransforms,r,t),a=t.data;return a.setAll(xo(e)),a.setAll(i),t.convertToFoundDocument(t.version,a).setHasLocalMutations(),n===null?null:n.unionWith(e.fieldMask.fields).unionWith(e.fieldTransforms.map((e=>e.field)))}(e,t,n,r):function(e,t,n){return fo(e.precondition,t)?(t.convertToNoDocument(t.version).setHasLocalMutations(),null):n}(e,t,n)}function _o(e,t){let n=null;for(let r of e.fieldTransforms){let e=t.data.field(r.field),i=Ya(r.transform,e||null);i!=null&&(n===null&&(n=Va.empty()),n.set(r.field,i))}return n||null}function vo(e,t){return e.type===t.type&&!!e.key.isEqual(t.key)&&!!e.precondition.isEqual(t.precondition)&&!!function(e,t){return e===void 0&&t===void 0||!(!e||!t)&&Ci(e,t,((e,t)=>co(e,t)))}(e.fieldTransforms,t.fieldTransforms)&&(e.type===0?e.value.isEqual(t.value):e.type!==1||e.data.isEqual(t.data)&&e.fieldMask.isEqual(t.fieldMask))}var yo=class extends po{constructor(e,t,n,r=[]){super(),this.key=e,this.value=t,this.precondition=n,this.fieldTransforms=r,this.type=0}getFieldMask(){return null}},bo=class extends po{constructor(e,t,n,r,i=[]){super(),this.key=e,this.data=t,this.fieldMask=n,this.prec
25ondition=r,this.fieldTransforms=i,this.type=1}getFieldMask(){return this.fieldMask}};function xo(e){let t=new Map;return e.fieldMask.fields.forEach((n=>{if(!n.isEmpty()){let r=e.data.field(n);t.set(n,r)}})),t}function So(e,t,n){let r=new Map;P(e.length===n.length,32656,{h:n.length,T:e.length});for(let i=0;i<n.length;i++){let a=e[i],o=a.transform,s=t.data.field(a.field);r.set(a.field,Ja(o,s,n[i]))}return r}function Co(e,t,n){let r=new Map;for(let i of e){let e=i.transform,a=n.data.field(i.field);r.set(i.field,qa(e,a,t))}return r}var wo=class extends po{constructor(e,t){super(),this.key=e,this.precondition=t,this.type=2,this.fieldTransforms=[]}getFieldMask(){return null}},To=class extends po{constructor(e,t){super(),this.key=e,this.precondition=t,this.type=3,this.fieldTransforms=[]}getFieldMask(){return null}},Eo=class{constructor(e,t){this.position=e,this.inclusive=t}};function Do(e,t,n){let r=0;for(let i=0;i<e.position.length;i++){let a=t[i],o=e.position[i];if(r=a.field.isKeyField()?V.comparator(V.fromName(o.referenceValue),n.key):wa(o,n.data.field(a.field)),a.dir===`desc`&&(r*=-1),r!==0)break}return r}function Oo(e,t){if(e===null)return t===null;if(t===null||e.inclusive!==t.inclusive||e.position.length!==t.position.length)return!1;for(let n=0;n<e.position.length;n++)if(!Sa(e.position[n],t.position[n]))return!1;return!0}var ko=class{},Ao=class e extends ko{constructor(e,t,n){super(),this.field=e,this.op=t,this.value=n}static create(t,n,r){return t.isKeyField()?n===`in`||n===`not-in`?this.createKeyFieldInFilter(t,n,r):new Ro(t,n,r):n===`array-contains`?new Ho(t,r):n===`in`?new Uo(t,r):n===`not-in`?new Wo(t,r):n===`array-contains-any`?new Go(t,r):new e(t,n,r)}static createKeyFieldInFilter(e,t,n){return t===`in`?new zo(e,n):new Bo(e,n)}matches(e){let t=e.data.field(this.field);return this.op===`!=`?t!==null&&t.nullValue===void 0&&this.matchesComparison(wa(t,this.value)):t!==null&&W(this.value)===W(t)&&this.matchesComparison(wa(t,this.value))}matchesComparison(e){switch(this.op){case`<`:return e<0;case`<=`:return e<=0;case`==`:return e===0;case`!=`:return e!==0;case`>`:return e>0;case`>=`:return e>=0;default:return N(47266,{operator:this.op})}}isInequality(){return[`<`,`<=`,`>`,`>=`,`!=`,`not-in`].indexOf(this.op)>=0}getFlattenedFilters(){return[this]}getFilters(){return[this]}},jo=class e extends ko{constructor(e,t){super(),this.filters=e,this.op=t,this.P=null}static create(t,n){return new e(t,n)}matches(e){return Mo(this)?this.filters.find((t=>!t.matches(e)))===void 0:this.filters.find((t=>t.matches(e)))!==void 0}getFlattenedFilters(){return this.P!==null||(this.P=this.filters.reduce(((e,t)=>e.concat(t.getFlattenedFilters())),[])),this.P}getFilters(){return Object.assign([],this.filters)}};function Mo(e){return e.op===`and`}function No(e){return Po(e)&&Mo(e)}function Po(e){for(let t of e.filters)if(t instanceof jo)return!1;return!0}function Fo(e){if(e instanceof Ao)return e.field.canonicalString()+e.op.toString()+Da(e.value);if(No(e))return e.filters.map((e=>Fo(e))).join(`,`);{let t=e.filters.map((e=>Fo(e))).join(`,`);return`${e.op}(${t})`}}function Io(e,t){return e instanceof Ao?function(e,t){return t instanceof Ao&&e.op===t.op&&e.field.isEqual(t.field)&&Sa(e.value,t.value)}(e,t):e instanceof jo?function(e,t){return t instanceof jo&&e.op===t.op&&e.filters.length===t.filters.length&&e.filters.reduce(((e,n,r)=>e&&Io(n,t.filters[r])),!0)}(e,t):void N(19439)}function Lo(e){return e instanceof Ao?function(e){return`${e.field.canonicalString()} ${e.op} ${Da(e.value)}`}(e):e instanceof jo?function(e){return e.op.toString()+` {`+e.getFilters().map(Lo).join(` ,`)+`}`}(e):`Filter`}var Ro=class extends Ao{constructor(e,t,n){super(e,t,n),this.key=V.fromName(n.referenceValue)}matches(e){let t=V.comparator(e.key,this.key);return this.matchesComparison(t)}},zo=class extends Ao{constructor(e,t){super(e,`in`,t),this.keys=Vo(`in`,t)}matches(e){return this.keys.some((t=>t.isEqual(e.key)))}},Bo=class extends Ao{constructor(e,t){super(e,`not-in`,t),this.keys=Vo(`not-in`,t)}matches(e){return!this.keys.some((t=>t.isEqual(e.key)))}};function Vo(e,t){return(t.arrayValue?.values||[]).map((e=>
25V.fromName(e.referenceValue)))}var Ho=class extends Ao{constructor(e,t){super(e,`array-contains`,t)}matches(e){let t=e.data.field(this.field);return Na(t)&&Ca(t.arrayValue,this.value)}},Uo=class extends Ao{constructor(e,t){super(e,`in`,t)}matches(e){let t=e.data.field(this.field);return t!==null&&Ca(this.value.arrayValue,t)}},Wo=class extends Ao{constructor(e,t){super(e,`not-in`,t)}matches(e){if(Ca(this.value.arrayValue,{nullValue:`NULL_VALUE`}))return!1;let t=e.data.field(this.field);return t!==null&&t.nullValue===void 0&&!Ca(this.value.arrayValue,t)}},Go=class extends Ao{constructor(e,t){super(e,`array-contains-any`,t)}matches(e){let t=e.data.field(this.field);return!(!Na(t)||!t.arrayValue.values)&&t.arrayValue.values.some((e=>Ca(this.value.arrayValue,e)))}},Ko=class{constructor(e,t=`asc`){this.field=e,this.dir=t}};function qo(e,t){return e.dir===t.dir&&e.field.isEqual(t.field)}var G=class e{static fromTimestamp(t){return new e(t)}static min(){return new e(new Ki(0,0))}static max(){return new e(new Ki(253402300799,999999999))}constructor(e){this.timestamp=e}compareTo(e){return this.timestamp._compareTo(e.timestamp)}isEqual(e){return this.timestamp.isEqual(e.timestamp)}toMicroseconds(){return 1e6*this.timestamp.seconds+this.timestamp.nanoseconds/1e3}toString(){return`SnapshotVersion(`+this.timestamp.toString()+`)`}toTimestamp(){return this.timestamp}},Jo=class e{constructor(e,t,n,r,i,a,o){this.key=e,this.documentType=t,this.version=n,this.readTime=r,this.createTime=i,this.data=a,this.documentState=o}static newInvalidDocument(t){return new e(t,0,G.min(),G.min(),G.min(),Va.empty(),0)}static newFoundDocument(t,n,r,i){return new e(t,1,n,G.min(),r,i,0)}static newNoDocument(t,n){return new e(t,2,n,G.min(),G.min(),Va.empty(),0)}static newUnknownDocument(t,n){return new e(t,3,n,G.min(),G.min(),Va.empty(),2)}convertToFoundDocument(e,t){return!this.createTime.isEqual(G.min())||this.documentType!==2&&this.documentType!==0||(this.createTime=e),this.version=e,this.documentType=1,this.data=t,this.documentState=0,this}convertToNoDocument(e){return this.version=e,this.documentType=2,this.data=Va.empty(),this.documentState=0,this}convertToUnknownDocument(e){return this.version=e,this.documentType=3,this.data=Va.empty(),this.documentState=2,this}setHasCommittedMutations(){return this.documentState=2,this}setHasLocalMutations(){return this.documentState=1,this.version=G.min(),this}setReadTime(e){return this.readTime=e,this}get hasLocalMutations(){return this.documentState===1}get hasCommittedMutations(){return this.documentState===2}get hasPendingWrites(){return this.hasLocalMutations||this.hasCommittedMutations}isValidDocument(){return this.documentType!==0}isFoundDocument(){return this.documentType===1}isNoDocument(){return this.documentType===2}isUnknownDocument(){return this.documentType===3}isEqual(t){return t instanceof e&&this.key.isEqual(t.key)&&this.version.isEqual(t.version)&&this.documentType===t.documentType&&this.documentState===t.documentState&&this.data.isEqual(t.data)}mutableCopy(){return new e(this.key,this.documentType,this.version,this.readTime,this.createTime,this.data.clone(),this.documentState)}toString(){return`Document(${this.key}, ${this.version}, ${JSON.stringify(this.data.value)}, {createTime: ${this.createTime}}), {documentType: ${this.documentType}}), {documentState: ${this.documentState}})`}},Yo=-1;function Xo(e,t){let n=e.toTimestamp().seconds,r=e.toTimestamp().nanoseconds+1;return new Qo(G.fromTimestamp(r===1e9?new Ki(n+1,0):new Ki(n,r)),V.empty(),t)}function Zo(e){return new Qo(e.readTime,e.key,Yo)}var Qo=class e{constructor(e,t,n){this.readTime=e,this.documentKey=t,this.largestBatchId=n}static min(){return new e(G.min(),V.empty(),Yo)}static max(){return new e(G.max(),V.empty(),Yo)}};function $o(e,t){let n=e.readTime.compareTo(t.readTime);return n===0?(n=V.comparator(e.documentKey,t.documentKey),n===0?I(e.largestBatchId,t.largestBatchId):n):n}var es=class{constructor(e,t=null,n=[],r=[],i=null,a=null,o=null){this.path=e,this.collectionGroup=t,this.orderBy=n,this.filters=r,this.limit=i,this.startAt=a,this.endAt=o,this.R=null}};function ts(e,t=null,n=[],r=[],i=null,a=null,o=null){return new es(e,t,n,r,i,a,o)}function ns(e){let t=F(e);if(t.R===null){let e=t.path.canonicalString();t.collectionGroup!==null&&(e+=`|cg:`+t.collectionGroup),e+=`|f:`,e+=t.filters.map((e=>Fo(e))).join(`,`),e+=`|ob:`,e+=t.orderBy.map((e=>function(e){return e.field.canonicalString()+e.dir}(e))).join(`,`),ua(t.limit)||(e+=`|l:`,e+=t.limit),t.startAt&&(e+=`|lb:`,e+=t.startAt.inclusive?`b:`:`a:`,e+=t.startAt.position.map((e=>Da(e))).join(`,`)),t.endAt&&(e+=`|ub:`,e+=t.endAt.inclusive?`a:`:`b:`,e+=t.endAt.position.map((e=>Da(e))).join(`,`)),t.R=e}return t.R}function rs(e,t){if(e.limit!==t.limit||e.orderBy.length!==t.orderBy.length)return!1;for(let n=0;n<e.orderBy.length;n++)if(!qo(e.orderBy[n],t.orderBy[n]))return!1;if(e.filters.length!==t.filters.length)return!1;for(let n=0;n<e.filters.length;n++)if(!Io(e.filters[n],t.filters[n]))return!1;return e.collectionGroup===t.collectionGroup&&!!e.path.isEqual(t.path)&&!!Oo(e.startAt,t.startAt)&&Oo(e.endAt,t.endAt)}function is(e){return!!e.isCorePipeline}function as(e){return!!e.path&&V.isDocumentKey(e.path)&&e.collectionGroup===null&&e.filters.length===0}var os=class{constructor(e,t=null,n=[],r=[],i=null,a=`F`,o=null,s=null){this.path=e,this.collectionGroup=t,this.explicitOrderBy=n,this.filters=r,this.limit=i,this.limitType=a,this.startAt=o,this.endAt=s,this.I=null,this.A=null,this.V=null,this.startAt,this.endAt}};function ss(e,t,n,r,i,a,o,s){return new os(e,t,n,r,i,a,o,s)}function cs(e){return new os(e)}function ls(e){return e.filters.length===0&&e.limit===null&&e.startAt==null&&e.endAt==null&&(e.explicitOrderBy.length===0||e.explicitOrderBy.length===1&&e.explicitOrderBy[0].field.isKeyField())}function us(e){return V.isDocumentKey(e.path)&&e.collectionGroup===null&&e.filters.length===0}function ds(e){return e.collectionGroup!==null}function fs(e){let t=F(e);if(t.I===null){t.I=[];let e=new Set;for(let n of t.explicitOrderBy)t.I.push(n),e.add(n.field.canonicalString());let n=t.explicitOrderBy.length>0?t.explicitOrderBy[t.explicitOrderBy.length-1].dir:`asc`;(function(e){let t=new Ei(ji.comparator);
25return e.filters.forEach((e=>{e.getFlattenedFilters().forEach((e=>{e.isInequality()&&(t=t.add(e.field))}))})),t})(t).forEach((r=>{e.has(r.canonicalString())||r.isKeyField()||t.I.push(new Ko(r,n))})),e.has(ji.keyField().canonicalString())||t.I.push(new Ko(ji.keyField(),n))}return t.I}function ps(e){let t=F(e);return t.A||=ms(t,fs(e)),t.A}function ms(e,t){if(e.limitType===`F`)return ts(e.path,e.collectionGroup,t,e.filters,e.limit,e.startAt,e.endAt);{t=t.map((e=>{let t=e.dir===`desc`?`asc`:`desc`;return new Ko(e.field,t)}));let n=e.endAt?new Eo(e.endAt.position,e.endAt.inclusive):null,r=e.startAt?new Eo(e.startAt.position,e.startAt.inclusive):null;return ts(e.path,e.collectionGroup,t,e.filters,e.limit,n,r)}}function hs(e,t,n){return new os(e.path,e.collectionGroup,e.explicitOrderBy.slice(),e.filters.slice(),t,n,e.startAt,e.endAt)}function gs(e,t){return rs(ps(e),ps(t))&&e.limitType===t.limitType}function _s(e){return`Query(target=${function(e){let t=e.path.canonicalString();return e.collectionGroup!==null&&(t+=` collectionGroup=`+e.collectionGroup),e.filters.length>0&&(t+=`, filters: [${e.filters.map((e=>Lo(e))).join(`, `)}]`),ua(e.limit)||(t+=`, limit: `+e.limit),e.orderBy.length>0&&(t+=`, orderBy: [${e.orderBy.map((e=>function(e){return`${e.field.canonicalString()} (${e.dir})`}(e))).join(`, `)}]`),e.startAt&&(t+=`, startAt: `,t+=e.startAt.inclusive?`b:`:`a:`,t+=e.startAt.position.map((e=>Da(e))).join(`,`)),e.endAt&&(t+=`, endAt: `,t+=e.endAt.inclusive?`a:`:`b:`,t+=e.endAt.position.map((e=>Da(e))).join(`,`)),`Target(${t})`}(ps(e))}; limitType=${e.limitType})`}function vs(e,t){return t.isFoundDocument()&&function(e,t){let n=t.key.path;return e.collectionGroup===null?V.isDocumentKey(e.path)?e.path.isEqual(n):e.path.isImmediateParentOf(n):t.key.hasCollectionId(e.collectionGroup)&&e.path.isPrefixOf(n)}(e,t)&&function(e,t){for(let n of fs(e))if(!n.field.isKeyField()&&t.data.field(n.field)===null)return!1;return!0}(e,t)&&function(e,t){for(let n of e.filters)if(!n.matches(t))return!1;return!0}(e,t)&&function(e,t){return!(e.startAt&&!function(e,t,n){let r=Do(e,t,n);return e.inclusive?r<=0:r<0}(e.startAt,fs(e),t)||e.endAt&&!function(e,t,n){let r=Do(e,t,n);return e.inclusive?r>=0:r>0}(e.endAt,fs(e),t))}(e,t)}function ys(e){return(t,n)=>{let r=!1;for(let i of fs(e)){let e=bs(i,t,n);if(e!==0)return e;r||=i.field.isKeyField()}return 0}}function bs(e,t,n){let r=e.field.isKeyField()?V.comparator(t.key,n.key):function(e,t,n){let r=t.data.field(e),i=n.data.field(e);return r!==null&&i!==null?wa(r,i):N(42886)}(e.field,t,n);switch(e.dir){case`asc`:return r;case`desc`:return-1*r;default:return N(19790,{direction:e.dir})}}var xs=class{constructor(e,t){this.count=e,this.unchangedNames=t}},K,q;function Ss(e){switch(e){case R.OK:return N(64938);case R.CANCELLED:case R.UNKNOWN:case R.DEADLINE_EXCEEDED:case R.RESOURCE_EXHAUSTED:case R.INTERNAL:case R.UNAVAILABLE:case R.UNAUTHENTICATED:return!1;case R.INVALID_ARGUMENT:case R.NOT_FOUND:case R.ALREADY_EXISTS:case R.PERMISSION_DENIED:case R.FAILED_PRECONDITION:case R.ABORTED:case R.OUT_OF_RANGE:case R.UNIMPLEMENTED:case R.DATA_LOSS:return!0;default:return N(15467,{code:e})}}function Cs(e){if(e===void 0)return pi(`GRPC error has no .code`),R.UNKNOWN;switch(e){case K.OK:return R.OK;case K.CANCELLED:return R.CANCELLED;case K.UNKNOWN:return R.UNKNOWN;case K.DEADLINE_EXCEEDED:return R.DEADLINE_EXCEEDED;case K.RESOURCE_EXHAUSTED:return R.RESOURCE_EXHAUSTED;case K.INTERNAL:return R.INTERNAL;case K.UNAVAILABLE:return R.UNAVAILABLE;case K.UNAUTHENTICATED:return R.UNAUTHENTICATED;case K.INVALID_ARGUMENT:return R.INVALID_ARGUMENT;case K.NOT_FOUND:return R.NOT_FOUND;case K.ALREADY_EXISTS:return R.ALREADY_EXISTS;case K.PERMISSION_DENIED:return R.PERMISSION_DENIED;case K.FAILED_PRECONDITION:return R.FAILED_PRECONDITION;case K.ABORTED:return R.ABORTED;case K.OUT_OF_RANGE:return R.OUT_OF_RANGE;case K.UNIMPLEMENTED:return R.UNIMPLEMENTED;case K.DATA_LOSS:return R.DATA_LOSS;default:return N(39323,{code:e})}}(q=K||={})[q.OK=0]=`OK`,q[q.CANCELLED=1]=`CANCELLED`,q[q.UNKNOWN=2]=`UNKNOWN`,q[q.INVALID_ARGUMENT=3]=`INVALID_ARGUMENT`,q[q.DEADLINE_EXCEEDED=4]=`DEADLINE_EXCEEDED`,q[q.NOT_FOUND=5]=`NOT_FOUND`,q[q.ALREADY_EXISTS=6]=`ALREADY_EXISTS`,q[q.PERMISSION_DENIED=7]=`PERMISSION_DENIED`,q[q.UNAUTHENTICATED=16]=`UNAUTHENTICATED`,q[q.RESOURCE_EXHAUSTED=8]=`RESOURCE_EXHAUSTED`,q[q.FAILED_PRECONDITION=9]=`FAILED_PRECONDITION`,q[q.ABORTED=10]=`ABORTED`,q[q.OUT_OF_RANGE=11]=`OUT_OF_RANGE`,q[q.UNIMPLEMENT
25ED=12]=`UNIMPLEMENTED`,q[q.INTERNAL=13]=`INTERNAL`,q[q.UNAVAILABLE=14]=`UNAVAILABLE`,q[q.DATA_LOSS=15]=`DATA_LOSS`;var ws=class{constructor(e,t){this.mapKeyFn=e,this.equalsFn=t,this.inner={},this.innerSize=0}get(e){let t=this.mapKeyFn(e),n=this.inner[t];if(n!==void 0){for(let[t,r]of n)if(this.equalsFn(t,e))return r}}has(e){return this.get(e)!==void 0}set(e,t){let n=this.mapKeyFn(e),r=this.inner[n];if(r===void 0)return this.inner[n]=[[e,t]],void this.innerSize++;for(let n=0;n<r.length;n++)if(this.equalsFn(r[n][0],e))return void(r[n]=[e,t]);r.push([e,t]),this.innerSize++}delete(e){let t=this.mapKeyFn(e),n=this.inner[t];if(n===void 0)return!1;for(let r=0;r<n.length;r++)if(this.equalsFn(n[r][0],e))return n.length===1?delete this.inner[t]:n.splice(r,1),this.innerSize--,!0;return!1}forEach(e){Pi(this.inner,((t,n)=>{for(let[t,r]of n)e(t,r)}))}isEmpty(){return Ii(this.inner)}size(){return this.innerSize}},Ts=new L(V.comparator);function Es(){return Ts}var Ds=new L(V.comparator);function Os(...e){let t=Ds;for(let n of e)t=t.insert(n.key,n);return t}function ks(e){let t=Ds;return e.forEach(((e,n)=>t=t.insert(e,n.overlayedDocument))),t}function As(){return Ms()}function js(){return Ms()}function Ms(){return new ws((e=>e.toString()),((e,t)=>e.isEqual(t)))}var Ns=new L(V.comparator),Ps=new Ei(V.comparator);function J(...e){let t=Ps;for(let n of e)t=t.add(n);return t}var Fs=new Ei(I);function Is(){return Fs}var Ls=null;function Rs(){return new TextEncoder}var zs=new Tn([4294967295,4294967295],0);function Bs(e){let t=Rs().encode(e),n=new En;return n.update(t),new Uint8Array(n.digest())}function Vs(e){let t=new DataView(e.buffer),n=t.getUint32(0,!0),r=t.getUint32(4,!0),i=t.getUint32(8,!0),a=t.getUint32(12,!0);return[new Tn([n,r],0),new Tn([i,a],0)]}var Hs=class e{constructor(e,t,n){if(this.bitmap=e,this.padding=t,this.hashCount=n,t<0||t>=8)throw new Us(`Invalid padding: ${t}`);if(n<0||e.length>0&&this.hashCount===0)throw new Us(`Invalid hash count: ${n}`);if(e.length===0&&t!==0)throw new Us(`Invalid padding when bitmap length is 0: ${t}`);this.m=8*e.length-t,this.p=Tn.fromNumber(this.m)}v(e,t,n){let r=e.add(t.multiply(Tn.fromNumber(n)));return r.compare(zs)===1&&(r=new Tn([r.getBits(0),r.getBits(1)],0)),r.modulo(this.p).toNumber()}S(e){return!!(this.bitmap[Math.floor(e/8)]&1<<e%8)}mightContain(e){if(this.m===0)return!1;let[t,n]=Vs(Bs(e));for(let e=0;e<this.hashCount;e++){let r=this.v(t,n,e);if(!this.S(r))return!1}return!0}static create(t,n,r){let i=t%8==0?0:8-t%8,a=new Uint8Array(Math.ceil(t/8)),o=new e(a,i,n);return r.forEach((e=>o.insert(e))),o}insert(e){if(this.m===0)return;let[t,n]=Vs(Bs(e));for(let e=0;e<this.hashCount;e++){let r=this.v(t,n,e);this.D(r)}}D(e){let t=Math.floor(e/8),n=e%8;this.bitmap[t]|=1<<n}},Us=class extends Error{constructor(){super(...arguments),this.name=`BloomFilterError`}},Ws=class e{constructor(e,t,n,r,i,a){this.snapshotVersion=e,this.targetChanges=t,this.targetMismatches=n,this.documentUpdates=r,this.augmentedDocumentUpdates=i,this.resolvedLimboDocuments=a}static createSynthesizedRemoteEventForCurrentChange(t,n,r){let i=new Map;return i.set(t,Gs.createSynthesizedTargetChangeForCurrentChange(t,n,r)),new e(G.min(),i,new L(I),Es(),Es(),J())}},Gs=class e{constructor(e,t,n,r,i){this.resumeToken=e,this.current=t,this.addedDocuments=n,this.modifiedDocuments=r,this.removedDocuments=i}static createSynthesizedTargetChangeForCurrentChange(t,n,r){return new e(r,n,J(),J(),J())}},Ks=class{constructor(e,t,n,r){this.C=e,this.removedTargetIds=t,this.key=n,this.F=r}},qs=class{constructor(e,t){this.targetId=e,this.O=t}},Js=class{constructor(e,t,n=Ji.EMPTY_BYTE_STRING,r=null){this.state=e,this.targetIds=t,this.resumeToken=n,this.cause=r}},Ys=class{constructor(e){this.targetId=e,this.M=0,this.N=$s(),this.L=Ji.EMPTY_BYTE_STRING,this.B=!1,this.U=!0}get current(){return this.B}get resumeToken(){return this.L}get k(){return this.M!==0}get q(){return this.U}$(e){e.approximateByteSize()>0&&(this.U=!0,this.L=e)}K(){let e=J(),t=J(),n=J();return this.N.forEach(((r,i)=>{switch(i){case 0:e=e.add(r);break;case 2:t=t.add(r);break;case 1:n=n.add(r);break;default:N(38017,{changeType:i})}})),new Gs(this.L,this.B,e,t,n)}W(){this.U=!1,this.N=$s()}G(e,t){this.U=!0,this.N=this.N.insert(e,t)}j(e){this.U=!0,this.N=this.N.remove(e)}H(){this.M+=1}J(){--this.M,P(this.M>=0,3241,{M:this.M,targetId:this.targetId})}Y(){this.U=!0,this.B=!0}},Xs=`WatchChangeAggregator`,Zs=class{constructor(e){this.Z=e,this.X=new Map,this.ee=Es(),this.te=Qs(),this.ne=Es(),this.re=Qs(),this.ie=new L(I)}se(e){for(let t of e.C)e.F&&e.F.isFoundDocument()?this._e(t,e.F):this.oe(t,e.key,e.F);for(let t of e.removedTargetIds)this.oe(t,e.key,e.F)}ae(e){this.forEachTarget(e,(t=>{let n=this.X.get(t);if(n)switch(e.state){case 0:this.ue(t)&&n.$(e.resumeToken);break;case 1:n.J(),n.k||n.W(),n.$(e.resumeToken);break;case 2:n.J(),n.k||this.removeTarget(t);break;case 3:this.ue(t)&&(n.Y(),n.$(e.resumeToken));break;case 4:this.ue(t)&&(this.ce(t),n.$(e.resumeToken));break;default:N(56790,{state:e.state})}else M(Xs,`handleTargetChange received targetChange for untracked target ID (${t}) with state (${e.state})`)}))}forEachTarget(e,t){e.targetIds.length>
250?e.targetIds.forEach(t):this.X.forEach(((e,n)=>{this.ue(n)&&t(n)}))}le(e){return is(e)?e.getPipelineSourceType()===`documents`&&e.getPipelineDocuments()?.length===1:as(e)}Ee(e){let t=e.targetId,n=e.O.count,r=this.he(t);if(r){let i=r.target;if(this.le(i))if(n===0){let e=new V(is(i)?B.fromString(i.getPipelineDocuments()[0]):i.path);this.oe(t,e,Jo.newNoDocument(e,G.min()))}else P(n===1,20013,`Single document existence filter with count: `+n);else{let r=this.Te(t);if(r!==n){let n=this.Pe(e),i=n?this.Re(n,e,r):1;if(i!==0){this.ce(t);let e=i===2?`TargetPurposeExistenceFilterMismatchBloom`:`TargetPurposeExistenceFilterMismatch`;this.ie=this.ie.insert(t,e)}Ls?.Ie(function(e,t,n,r,i){let a={localCacheCount:e,existenceFilterCount:t.count,databaseId:n.database,projectId:n.projectId},o=t.unchangedNames;return o&&(a.bloomFilter={applied:i===0,hashCount:o?.hashCount??0,bitmapLength:o?.bits?.bitmap?.length??0,padding:o?.bits?.padding??0,mightContain:e=>r?.mightContain(e)??!1}),a}(r,e.O,this.Z.Ae(),n,i))}}}}Pe(e){let t=e.O.unchangedNames;if(!t||!t.bits)return null;let{bits:{bitmap:n=``,padding:r=0},hashCount:i=0}=t,a,o;try{a=Zi(n).toUint8Array()}catch(e){if(e instanceof qi)return mi(`Decoding the base64 bloom filter in existence filter failed (`+e.message+`); ignoring the bloom filter and falling back to full re-query.`),null;throw e}try{o=new Hs(a,r,i)}catch(e){return mi(e instanceof Us?`BloomFilter error: `:`Applying bloom filter failed: `,e),null}return o.m===0?null:o}Re(e,t,n){return t.O.count===n-this.Ve(e,t.targetId)?0:2}Ve(e,t){let n=this.Z.getRemoteKeysForTarget(t),r=0;return n.forEach((n=>{let i=this.Z.Ae(),a=`projects/${i.projectId}/databases/${i.database}/documents/${n.path.canonicalString()}`;e.mightContain(a)||(this.oe(t,n,null),r++)})),r}de(e){let t=new Map;this.X.forEach(((n,r)=>{let i=this.he(r);if(i){if(n.current&&this.le(i.target)){let t=new V(is(i.target)?B.fromString(i.target.getPipelineDocuments()[0]):i.target.path);this.fe(t).has(r)||this.me(r,t)||this.oe(r,t,Jo.newNoDocument(t,e))}n.q&&(t.set(r,n.K()),n.W())}}));let n=J();this.re.forEach(((e,t)=>{let r=!0;t.forEachWhile((e=>{let t=this.he(e);return!t||t.purpose===`TargetPurposeLimboResolution`||(r=!1,!1)})),r&&(n=n.add(e))})),this.ee.forEach(((t,n)=>n.setReadTime(e))),this.ne.forEach(((t,n)=>n.setReadTime(e)));let r=new Ws(e,t,this.ie,this.ee,this.ne,n);return this.ee=Es(),this.te=Qs(),this.ne=Es(),this.re=Qs(),this.ie=new L(I),r}_e(e,t){let n=this.X.get(e);if(!n||!this.ue(e))return void M(Xs,`addDocumentToTarget received document for unknown inactive target (${e})`);let r=this.me(e,t.key)?2:0;n.G(t.key,r),is(this.he(e).target)&&this.he(e).target.getPipelineFlavor()!==`exact`?this.ne=this.ne.insert(t.key,t):this.ee=this.ee.insert(t.key,t),this.te=this.te.insert(t.key,this.fe(t.key).add(e)),this.re=this.re.insert(t.key,this.pe(t.key).add(e))}oe(e,t,n){let r=this.X.get(e);r&&this.ue(e)?(this.me(e,t)?r.G(t,1):r.j(t),this.re=this.re.insert(t,this.pe(t).delete(e)),this.re=this.re.insert(t,this.pe(t).add(e)),n&&(is(this.he(e).target)&&this.he(e).target.getPipelineFlavor()!==`exact`?this.ne=this.ne.insert(t,n):this.ee=this.ee.insert(t,n))):M(Xs,`removeDocumentFromTarget received document for unknown or inactive target (${e})`)}removeTarget(e){this.X.delete(e)}Te(e){let t=this.X.get(e);if(!t)return 0;let n=t.K();return this.Z.getRemoteKeysForTarget(e).size+n.addedDocuments.size-n.removedDocuments.size}H(e){let t=this.X.get(e);t||(M(Xs,`recordPendingTargetRequest set up tracking for target ID ${e}`),t=new Ys(e),this.X.set(e,t)),t.H()}pe(e){let t=this.re.get(e);return t||(t=new Ei(I),this.re=this.re.insert(e,t)),t}fe(e){let t=this.te.get(e);return t||(t=new Ei(I),this.te=this.te.insert(e,t)),t}ue(e){let t=this.he(e)!==null;return t||M(Xs,`Detected inactive target`,e),t}he(e){let t=this.X.get(e);return t===void 0||t.k?null:this.Z.ge(e)}ce(e){this.X.set(e,new Ys(e)),this.Z.getRemoteKeysForTarget(e).forEach((t=>{this.oe(e,t,null)}))}me(e,t){return this.Z.getRemoteKeysForTarget(e).has(t)}};function Qs(){return new L(V.comparator)}function $s(){return new L(V.comparator)}
25var ec={asc:`ASCENDING`,desc:`DESCENDING`},tc={"<":`LESS_THAN`,"<=":`LESS_THAN_OR_EQUAL`,">":`GREATER_THAN`,">=":`GREATER_THAN_OR_EQUAL`,"==":`EQUAL`,"!=":`NOT_EQUAL`,"array-contains":`ARRAY_CONTAINS`,in:`IN`,"not-in":`NOT_IN`,"array-contains-any":`ARRAY_CONTAINS_ANY`},nc={and:`AND`,or:`OR`},rc=class{constructor(e,t){this.databaseId=e,this.useProto3Json=t}};function ic(e,t){return e.useProto3Json||ua(t)?t:{value:t}}function ac(e,t){return e.useProto3Json?`${new Date(1e3*t.seconds).toISOString().replace(/\.\d*/,``).replace(`Z`,``)}.${(`000000000`+t.nanoseconds).slice(-9)}Z`:{seconds:``+t.seconds,nanos:t.nanoseconds}}function oc(e){let t=Xi(e);return new Ki(t.seconds,t.nanos)}function sc(e,t){return e.useProto3Json?t.toBase64():t.toUint8Array()}function cc(e,t){return ac(e,t.toTimestamp())}function lc(e){return P(!!e,49232),G.fromTimestamp(oc(e))}function uc(e,t){return dc(e,t).canonicalString()}function dc(e,t){let n=function(e){return new B([`projects`,e.projectId,`databases`,e.database])}(e).child(`documents`);return t===void 0?n:n.child(t)}function fc(e){let t=B.fromString(e);return P(Ic(t),10190,{key:t.toString()}),t}function pc(e,t){return uc(e.databaseId,t.path)}function mc(e,t){let n=fc(t);if(n.get(1)!==e.databaseId.projectId)throw new z(R.INVALID_ARGUMENT,`Tried to deserialize key from different project: `+n.get(1)+` vs `+e.databaseId.projectId);if(n.get(3)!==e.databaseId.database)throw new z(R.INVALID_ARGUMENT,`Tried to deserialize key from different database: `+n.get(3)+` vs `+e.databaseId.database);return new V(vc(n))}function hc(e,t){return uc(e.databaseId,t)}function gc(e){let t=fc(e);return t.length===4?B.emptyPath():vc(t)}function _c(e){return new B([`projects`,e.databaseId.projectId,`databases`,e.databaseId.database]).canonicalString()}function vc(e){return P(e.length>4&&e.get(4)===`documents`,29091,{key:e.toString()}),e.popFirst(5)}function yc(e,t,n){return{name:pc(e,t),fields:n.value.mapValue.fields}}function bc(e,t){let n;if(`targetChange`in t){t.targetChange;let r=function(e){return e===`NO_CHANGE`?0:e===`ADD`?1:e===`REMOVE`?2:e===`CURRENT`?3:e===`RESET`?4:N(39313,{state:e})}(t.targetChange.targetChangeType||`NO_CHANGE`),i=t.targetChange.targetIds||[],a=function(e,t){return e.useProto3Json?(P(t===void 0||typeof t==`string`,58123),Ji.fromBase64String(t||``)):(P(t===void 0||t instanceof Buffer||t instanceof Uint8Array,16193),Ji.fromUint8Array(t||new Uint8Array))}(e,t.targetChange.resumeToken),o=t.targetChange.cause;n=new Js(r,i,a,o&&function(e){return new z(e.code===void 0?R.UNKNOWN:Cs(e.code),e.message||``)}(o)||null)}else if(`documentChange`in t){t.documentChange;let r=t.documentChange;r.document,r.document.name,r.document.updateTime;let i=mc(e,r.document.name),a=lc(r.document.updateTime),o=r.document.createTime?lc(r.document.createTime):G.min(),s=new Va({mapValue:{fields:r.document.fields}}),c=Jo.newFoundDocument(i,a,o,s);n=new Ks(r.targetIds||[],r.removedTargetIds||[],c.key,c)}else if(`documentDelete`in t){t.documentDelete;let r=t.documentDelete;r.document;let i=mc(e,r.document),a=r.readTime?lc(r.readTime):G.min(),o=Jo.newNoDocument(i,a);n=new Ks([],r.removedTargetIds||[],o.key,o)}else if(`documentRemove`in t){t.documentRemove;let r=t.documentRemove;r.document;let i=mc(e,r.document);n=new Ks([],r.removedTargetIds||[],i,null)}else{if(!(`filter`in t))return N(11601,{ye:t});{t.filter;let e=t.filter;e.targetId;let{count:r=0,unchangedNames:i}=e,a=new xs(r,i),o=e.targetId;n=new qs(o,a)}}return n}function xc(e,t){let n;if(t instanceof yo)n={update:yc(e,t.key,t.value)};else if(t instanceof wo)n={delete:pc(e,t.key)};else if(t instanceof bo)n={update:yc(e,t.key,t.data),updateMask:Fc(t.fieldMask)};else{if(!(t instanceof To))return N(16599,{we:t.type});n={verify:pc(e,t.key)}}return t.fieldTransforms.length>0&&(n.updateTransforms=t.fieldTransforms.map((e=>function(e,t){let n=t.transform;if(n instanceof Xa)return{fieldPath:t.field.canonicalString(),setToServerValue:`REQUEST_TIME`};if(n instanceof Za)return{fieldPath:t.field.canonicalString(),appendMissingElements:{values:n.elements}};if(n instanceof $a)return{fieldPath:t.field.canonicalString(),removeAllFromArray:{values:n.elements}};if(n instanceof no)return{fieldPath:t.field.canonicalString(),increment:n.l};if(n instanceof ro)return{fieldPath:t.field.canonicalString(),minimum:n.l};if(n instanceof io)return{fieldPath:t.field.canonicalString(),maximum:n.l};throw N(20930,{transform:t.transform})}(0,e)))),t.precondition.isNone||(n.currentDocument=function(e,t){return t.updateTime===void 0?t.exists===void 0?N(27497):{exists:t.exists}:{updateTime:cc(e,t.updateTime)}}(e,t.precondition)),n}function Sc(e,t){return e&&e.length>0?(P(t!==void 0,14353),e.map((e=>function(e,t){let n=e.updateTime?lc(e.updateTime):lc(t);return n.isEqual(G.min())&&(n=lc(t)),new lo(n,e.transformResults||[])}(e,t)))):[]}function Cc(e,t){return{documents:[hc(e,t.path)]}}function wc(e,t){let n={structuredQuery:{}},r=t.path,i;t.collectionGroup===null?(i=r.popLast(),n.structuredQuery.from=[{collectionId:r.lastSegment()}]):(i=r,n.structuredQuery.from=[{collectionId:t.collectionGroup,allDescendants:!0}]),n.parent=hc(e,i);let a=function(e){if(e.length!==0)return Pc(jo.create(e,`and`))}(t.filters);a&&(n.structuredQuery.where=a);let o=function(e){if(e.length!==0)return e.map((e=>function(e){return{field:Mc(e.field),direction:kc(e.dir)}}(e)))}(t.orderBy);o&&(n.structuredQuery.orderBy=o);let s=ic(e,t.limit);return s!==null&&(n.structuredQuery.limit=s),t.startAt&&(n.structuredQuery.startAt=function(e){return{before:e.inclusive,values:e.position}}(t.startAt)),t.endAt&&(n.structuredQuery.endAt=function(e){return{before:!e.inclusive,values:e.position}}(t.endAt)),{be:n,parent:i}}
25function Tc(e){let t=gc(e.parent),n=e.structuredQuery,r=n.from?n.from.length:0,i=null;if(r>0){P(r===1,65062);let e=n.from[0];e.allDescendants?i=e.collectionId:t=t.child(e.collectionId)}let a=[];n.where&&(a=function(e){let t=Oc(e);return t instanceof jo&&No(t)?t.getFilters():[t]}(n.where));let o=[];n.orderBy&&(o=function(e){return e.map((e=>function(e){return new Ko(Nc(e.field),function(e){switch(e){case`ASCENDING`:return`asc`;case`DESCENDING`:return`desc`;default:return}}(e.direction))}(e)))}(n.orderBy));let s=null;n.limit&&(s=function(e){let t;return t=typeof e==`object`?e.value:e,ua(t)?null:t}(n.limit));let c=null;n.startAt&&(c=function(e){let t=!!e.before;return new Eo(e.values||[],t)}(n.startAt));let l=null;return n.endAt&&(l=function(e){let t=!e.before;return new Eo(e.values||[],t)}(n.endAt)),ss(t,i,o,a,s,`F`,c,l)}function Ec(e,t){let n=function(e){switch(e){case`TargetPurposeListen`:return null;case`TargetPurposeExistenceFilterMismatch`:return`existence-filter-mismatch`;case`TargetPurposeExistenceFilterMismatchBloom`:return`existence-filter-mismatch-bloom`;case`TargetPurposeLimboResolution`:return`limbo-document`;default:return N(28987,{purpose:e})}}(t.purpose);return n==null?null:{"goog-listen-tags":n}}function Dc(e,t){return{structuredPipeline:{pipeline:{stages:t.stages.map((t=>t._toProto(e)))}}}}function Oc(e){return e.unaryFilter===void 0?e.fieldFilter===void 0?e.compositeFilter===void 0?N(30097,{filter:e}):function(e){return jo.create(e.compositeFilter.filters.map((e=>Oc(e))),function(e){switch(e){case`AND`:return`and`;case`OR`:return`or`;default:return N(1026)}}(e.compositeFilter.op))}(e):function(e){return Ao.create(Nc(e.fieldFilter.field),function(e){switch(e){case`EQUAL`:return`==`;case`NOT_EQUAL`:return`!=`;case`GREATER_THAN`:return`>`;case`GREATER_THAN_OR_EQUAL`:return`>=`;case`LESS_THAN`:return`<`;case`LESS_THAN_OR_EQUAL`:return`<=`;case`ARRAY_CONTAINS`:return`array-contains`;case`IN`:return`in`;case`NOT_IN`:return`not-in`;case`ARRAY_CONTAINS_ANY`:return`array-contains-any`;case`OPERATOR_UNSPECIFIED`:return N(58110);default:return N(50506)}}(e.fieldFilter.op),e.fieldFilter.value)}(e):function(e){switch(e.unaryFilter.op){case`IS_NAN`:let t=Nc(e.unaryFilter.field);return Ao.create(t,`==`,{doubleValue:NaN});case`IS_NULL`:let n=Nc(e.unaryFilter.field);return Ao.create(n,`==`,{nullValue:`NULL_VALUE`});case`IS_NOT_NAN`:let r=Nc(e.unaryFilter.field);return Ao.create(r,`!=`,{doubleValue:NaN});case`IS_NOT_NULL`:let i=Nc(e.unaryFilter.field);return Ao.create(i,`!=`,{nullValue:`NULL_VALUE`});case`OPERATOR_UNSPECIFIED`:return N(61313);default:return N(60726)}}(e)}function kc(e){return ec[e]}function Ac(e){return tc[e]}function jc(e){return nc[e]}function Mc(e){return{fieldPath:e.canonicalString()}}function Nc(e){return ji.fromServerFormat(e.fieldPath)}function Pc(e){return e instanceof Ao?function(e){if(e.op===`==`){if(Fa(e.value))return{unaryFilter:{field:Mc(e.field),op:`IS_NAN`}};if(Pa(e.value))return{unaryFilter:{field:Mc(e.field),op:`IS_NULL`}}}else if(e.op===`!=`){if(Fa(e.value))return{unaryFilter:{field:Mc(e.field),op:`IS_NOT_NAN`}};if(Pa(e.value))return{unaryFilter:{field:Mc(e.field),op:`IS_NOT_NULL`}}}return{fieldFilter:{field:Mc(e.field),op:Ac(e.op),value:e.value}}}(e):e instanceof jo?function(e){let t=e.getFilters().map((e=>Pc(e)));return t.length===1?t[0]:{compositeFilter:{op:jc(e.op),filters:t}}}(e):N(54877,{filter:e})}function Fc(e){let t=[];return e.fields.forEach((e=>t.push(e.canonicalString()))),{fieldPaths:t}}function Ic(e){return e.length>=4&&e.get(0)===`projects`&&e.get(2)===`databases`}function Lc(e){return!!e&&typeof e._toProto==`function`&&e._protoValueType===`ProtoValue`}function Rc(e,t){let n={fields:{}};return t.forEach(((t,r)=>{if(typeof r!=`string`)throw Error(`Cannot encode map with non-string key: ${r}`);n.fields[r]=t._toProto(e)})),{mapValue:n}}function zc(e){return{stringValue:e}}function Bc(e){return new rc(e,!0)}var Vc=class e{constructor(e){this._byteString=e}static fromBase64String(t){try{return new e(Ji.fromBase64String(t))}catch(e){throw new z(R.INVALID_ARGUMENT,`Failed to construct data from Base64 string: `+e)}}static fromUint8Array(t){return new e(Ji.fromUint8Array(t))}toBase64(){return this._byteString.toBase64()}toUint8Array(){return this._byteString.toUint8Array()}toString(){return`Bytes(base64: `+this.toBase64()+`)`}isEqual(e){return this._byteString.isEqual(e._byteString)}toJSON(){return{type:e._jsonSchemaVersion,bytes:this.toBase64()}}static fromJSON(t){if(Ui(t,e._jsonSchema))return e.fromBase64String(t.bytes)}};
25Vc._jsonSchemaVersion=`firestore/bytes/1.0`,Vc._jsonSchema={type:H(`string`,Vc._jsonSchemaVersion),bytes:H(`string`)};var Hc=class{constructor(...e){for(let t=0;t<e.length;++t)if(e[t].length===0)throw new z(R.INVALID_ARGUMENT,`Invalid field name at argument $(i + 1). Field names must not be empty.`);this._internalPath=new ji(e)}isEqual(e){return this._internalPath.isEqual(e._internalPath)}};function Uc(){return new Hc(Oi)}var Wc=class{constructor(e){this._methodName=e}},Gc=class e{constructor(e,t){if(!isFinite(e)||e<-90||e>90)throw new z(R.INVALID_ARGUMENT,`Latitude must be a number between -90 and 90, but was: `+e);if(!isFinite(t)||t<-180||t>180)throw new z(R.INVALID_ARGUMENT,`Longitude must be a number between -180 and 180, but was: `+t);this._lat=e,this._long=t}get latitude(){return this._lat}get longitude(){return this._long}isEqual(e){return this._lat===e._lat&&this._long===e._long}_compareTo(e){return I(this._lat,e._lat)||I(this._long,e._long)}toJSON(){return{latitude:this._lat,longitude:this._long,type:e._jsonSchemaVersion}}static fromJSON(t){if(Ui(t,e._jsonSchema))return new e(t.latitude,t.longitude)}};Gc._jsonSchemaVersion=`firestore/geoPoint/1.0`,Gc._jsonSchema={type:H(`string`,Gc._jsonSchemaVersion),latitude:H(`number`),longitude:H(`number`)};var Kc=class{constructor(e){this.uid=e}isAuthenticated(){return this.uid!=null}toKey(){return this.isAuthenticated()?`uid:`+this.uid:`anonymous-user`}isEqual(e){return e.uid===this.uid}};Kc.UNAUTHENTICATED=new Kc(null),Kc.GOOGLE_CREDENTIALS=new Kc(`google-credentials-uid`),Kc.FIRST_PARTY=new Kc(`first-party-uid`),Kc.MOCK_USER=new Kc(`mock-user`);var qc=class{constructor(){this.promise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}},Jc=class{constructor(e,t){this.user=t,this.type=`OAuth`,this.headers=new Map,this.headers.set(`Authorization`,`Bearer ${e}`)}},Yc=class{getToken(){return Promise.resolve(null)}invalidateToken(){}start(e,t){e.enqueueRetryable((()=>t(Kc.UNAUTHENTICATED)))}shutdown(){}},Xc=class{constructor(e){this.token=e,this.changeListener=null}getToken(){return Promise.resolve(this.token)}invalidateToken(){}start(e,t){this.changeListener=t,e.enqueueRetryable((()=>t(this.token.user)))}shutdown(){this.changeListener=null}},Zc=class{constructor(e){this.Se=e,this.currentUser=Kc.UNAUTHENTICATED,this.De=0,this.forceRefresh=!1,this.auth=null}start(e,t){P(this.xe===void 0,42304);let n=this.De,r=e=>this.De===n?Promise.resolve():(n=this.De,t(e)),i=new qc;this.xe=()=>{this.De++,this.currentUser=this.Ce(),i.resolve(),i=new qc,e.enqueueRetryable((()=>r(this.currentUser)))};let a=()=>{let t=i;e.enqueueRetryable((async()=>{await t.promise,await r(this.currentUser)}))},o=e=>{M(`FirebaseAuthCredentialsProvider`,`Auth detected`),this.auth=e,this.xe&&(this.auth.addAuthTokenListener(this.xe),a())};this.Se.onInit((e=>o(e))),setTimeout((()=>{if(!this.auth){let e=this.Se.getImmediate({optional:!0});e?o(e):(M(`FirebaseAuthCredentialsProvider`,`Auth not yet detected`),i.resolve(),i=new qc)}}),0),a()}getToken(){let e=this.De,t=this.forceRefresh;return this.forceRefresh=!1,this.auth?this.auth.getToken(t).then((t=>this.De===e?t?(P(typeof t.accessToken==`string`,31837,{Fe:t}),new Jc(t.accessToken,this.currentUser)):null:(M(`FirebaseAuthCredentialsProvider`,`getToken aborted due to token change.`),this.getToken()))):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.auth&&this.xe&&this.auth.removeAuthTokenListener(this.xe),this.xe=void 0}Ce(){let e=this.auth&&this.auth.getUid();return P(e===null||typeof e==`string`,2055,{Oe:e}),new Kc(e)}},Qc=class{constructor(e,t,n){this.Me=e,this.Ne=t,this.Le=n,this.type=`FirstParty`,this.user=Kc.FIRST_PARTY,this.Be=new Map}Ue(){return this.Le?this.Le():null}get headers(){this.Be.set(`X-Goog-AuthUser`,this.Me);let e=this.Ue();return e&&this.Be.set(`Authorization`,e),this.Ne&&this.Be.set(`X-Goog-
25Iam-Authorization-Token`,this.Ne),this.Be}},$c=class{constructor(e,t,n){this.Me=e,this.Ne=t,this.Le=n}getToken(){return Promise.resolve(new Qc(this.Me,this.Ne,this.Le))}start(e,t){e.enqueueRetryable((()=>t(Kc.FIRST_PARTY)))}shutdown(){}invalidateToken(){}},el=class{constructor(e){this.value=e,this.type=`AppCheck`,this.headers=new Map,e&&e.length>0&&this.headers.set(`x-firebase-appcheck`,this.value)}},tl=class{constructor(e,t){this.ke=t,this.forceRefresh=!1,this.appCheck=null,this.qe=null,this.$e=null,Qt(e)&&e.settings.appCheckToken&&(this.$e=e.settings.appCheckToken)}start(e,t){P(this.xe===void 0,3512);let n=e=>{e.error!=null&&M(`FirebaseAppCheckTokenProvider`,`Error getting App Check token; using placeholder token instead. Error: ${e.error.message}`);let n=e.token!==this.qe;return this.qe=e.token,M(`FirebaseAppCheckTokenProvider`,`Received ${n?`new`:`existing`} token.`),n?t(e.token):Promise.resolve()};this.xe=t=>{e.enqueueRetryable((()=>n(t)))};let r=e=>{M(`FirebaseAppCheckTokenProvider`,`AppCheck detected`),this.appCheck=e,this.xe&&this.appCheck.addTokenListener(this.xe)};this.ke.onInit((e=>r(e))),setTimeout((()=>{if(!this.appCheck){let e=this.ke.getImmediate({optional:!0});e?r(e):M(`FirebaseAppCheckTokenProvider`,`AppCheck not yet detected`)}}),0)}getToken(){if(this.$e)return Promise.resolve(new el(this.$e));let e=this.forceRefresh;return this.forceRefresh=!1,this.appCheck?this.appCheck.getToken(e).then((e=>e?(P(typeof e.token==`string`,44558,{tokenResult:e}),this.qe=e.token,new el(e.token)):null)):Promise.resolve(null)}invalidateToken(){this.forceRefresh=!0}shutdown(){this.appCheck&&this.xe&&this.appCheck.removeTokenListener(this.xe),this.xe=void 0}};function nl(e){let t={};return e.timeoutSeconds!==void 0&&(t.timeoutSeconds=e.timeoutSeconds),t}var rl=class{Ke(e){}shutdown(){}},il=`ConnectivityMonitor`,al=class{constructor(){this.We=()=>this.Qe(),this.Ge=()=>this.ze(),this.je=[],this.He()}Ke(e){this.je.push(e)}shutdown(){window.removeEventListener(`online`,this.We),window.removeEventListener(`offline`,this.Ge)}He(){window.addEventListener(`online`,this.We),window.addEventListener(`offline`,this.Ge)}Qe(){M(il,`Network connectivity changed: AVAILABLE`);for(let e of this.je)e(0)}ze(){M(il,`Network connectivity changed: UNAVAILABLE`);for(let e of this.je)e(1)}static Je(){return typeof window<`u`&&window.addEventListener!==void 0&&window.removeEventListener!==void 0}},ol=null;function sl(){return ol===null?ol=function(){return 268435456+Math.round(2147483648*Math.random())}():ol++,`0x`+ol.toString(16)}var cl=`RestConnection`,ll={BatchGetDocuments:`batchGet`,Commit:`commit`,RunQuery:`runQuery`,RunAggregationQuery:`runAggregationQuery`,ExecutePipeline:`executePipeline`},ul=class{get Ye(){return!1}constructor(e){this.databaseInfo=e,this.databaseId=e.databaseId;let t=e.ssl?`https`:`http`,n=encodeURIComponent(this.databaseId.projectId),r=encodeURIComponent(this.databaseId.database);this.Ze=t+`://`+e.host,this.Xe=`projects/${n}/databases/${r}`,this.et=this.databaseId.database===oa?`project_id=${n}`:`project_id=${n}&database_id=${r}`}tt(e,t,n,r,i){let a=sl(),o=this.nt(e,t.toUriEncodedString());M(cl,`Sending RPC '${e}' ${a}:`,o,n);let s={"google-cloud-resource-prefix":this.Xe,"x-goog-request-params":this.et};this.rt(s,r,i);let{host:c}=new URL(o),l=je(c);return this.it(e,o,s,n,l).then((t=>(M(cl,`Received RPC '${e}' ${a}: `,t),t)),(t=>{throw mi(cl,`RPC '${e}' ${a} failed with error: `,t,`url: `,o,`request:`,n),t}))}st(e,t,n,r,i,a){return this.tt(e,t,n,r,i)}rt(e,t,n){if(e[`X-Goog-Api-Client`]=function(){return`gl-js/ fire/`+li}(),e[`Content-Type`]=`text/plain`,this.databaseInfo.appId&&(e[`X-Firebase-GMPID`]=this.databaseInfo.appId),t&&t.headers.forEach(((t,n)=>e[n]=t)),n&&n.headers.forEach(((t,n)=>e[n]=t)),this.databaseInfo._customHeaders)for(let t of Object.keys(this.databaseInfo._customHeaders))e[t]=this.databaseInfo._customHeaders[t]}nt(e,t){let n=ll[e],r=`${this.Ze}/v1/${t}:${n}`;return this.databaseInfo.apiKey&&(r=`${r}?key=${encodeURIComponent(this.databaseInfo.apiKey)}`),r}terminate(){}},dl=class{constructor(e){this._t=e._t,this.ot=e.ot}ut(e){this.ct=e}lt(e){this.Et=e}ht(e){this.Tt=e}onMessage(e){this.Pt=e}close(){this.ot()}send(e){this._t(e)}Rt(){this.ct()}It(){this.Et()}At(e){this.Tt(e)}Vt(e){this.Pt(e)}},fl=`WebChannelConnection`,pl=(e,t,n)=>{e.listen(t,(e=>{try{n(e)}catch(e){setTimeout((()=>{throw e}
25),0)}}))},ml=class e extends ul{constructor(e){super(e),this.dt=[],this.forceLongPolling=e.forceLongPolling,this.autoDetectLongPolling=e.autoDetectLongPolling,this.useFetchStreams=e.useFetchStreams,this.longPollingOptions=e.longPollingOptions}static ft(){e.gt||=(pl(Fn(),Pn.STAT_EVENT,(e=>{e.stat===Nn.PROXY?M(fl,`STAT_EVENT: detected buffering proxy`):e.stat===Nn.NOPROXY&&M(fl,`STAT_EVENT: detected no buffering proxy`)})),!0)}it(e,t,n,r,i){let a=sl();return new Promise(((i,o)=>{let s=new kn;s.setWithCredentials(!0),s.listenOnce(jn.COMPLETE,(()=>{try{switch(s.getLastErrorCode()){case Mn.NO_ERROR:let t=s.getResponseJson();M(fl,`XHR for RPC '${e}' ${a} received:`,JSON.stringify(t)),i(t);break;case Mn.TIMEOUT:M(fl,`RPC '${e}' ${a} timed out`),o(new z(R.DEADLINE_EXCEEDED,`Request time out`));break;case Mn.HTTP_ERROR:let n=s.getStatus();if(M(fl,`RPC '${e}' ${a} failed with status:`,n,`response text:`,s.getResponseText()),n>0){let e=s.getResponseJson();Array.isArray(e)&&(e=e[0]);let t=e?.error;t&&t.status&&t.message?o(new z(function(e){let t=e.toLowerCase().replace(/_/g,`-`);return Object.values(R).indexOf(t)>=0?t:R.UNKNOWN}(t.status),t.message)):o(new z(R.UNKNOWN,`Server responded with status `+s.getStatus()))}else o(new z(R.UNAVAILABLE,`Connection failed.`));break;default:N(9055,{yt:e,streamId:a,wt:s.getLastErrorCode(),bt:s.getLastError()})}}finally{M(fl,`RPC '${e}' ${a} completed.`)}}));let c=JSON.stringify(r);M(fl,`RPC '${e}' ${a} sending request:`,r),s.send(t,`POST`,c,n,15)}))}vt(t,n,r){let i=sl(),a=[this.Ze,`/`,`google.firestore.v1.Firestore`,`/`,t,`/channel`],o=this.createWebChannelTransport(),s={httpSessionIdParam:`gsessionid`,initMessageHeaders:{},messageUrlParams:{database:`projects/${this.databaseId.projectId}/databases/${this.databaseId.database}`},sendRawJson:!0,supportsCrossDomainXhr:!0,internalChannelParams:{forwardChannelRequestTimeoutMs:6e5},forceLongPolling:this.forceLongPolling,detectBufferingProxy:this.autoDetectLongPolling},c=this.longPollingOptions.timeoutSeconds;c!==void 0&&(s.longPollingTimeout=Math.round(1e3*c)),this.useFetchStreams&&(s.useFetchStreams=!0),this.rt(s.initMessageHeaders,n,r),s.encodeInitMessageHeaders=!0;let l=a.join(``);M(fl,`Creating RPC '${t}' stream ${i}: ${l}`,s);let u=o.createWebChannel(l,s);this.St(u);let d=!1,f=!1,p=new dl({_t:e=>{f?M(fl,`Not sending because RPC '${t}' stream ${i} is closed:`,e):(d||=(M(fl,`Opening RPC '${t}' stream ${i} transport.`),u.open(),!0),M(fl,`RPC '${t}' stream ${i} sending:`,e),u.send(e))},ot:()=>u.close()});return pl(u,An.EventType.OPEN,(()=>{f||(M(fl,`RPC '${t}' stream ${i} transport opened.`),p.Rt())})),pl(u,An.EventType.CLOSE,(()=>{f||(f=!0,M(fl,`RPC '${t}' stream ${i} transport closed`),p.At(),this.Dt(u))})),pl(u,An.EventType.ERROR,(e=>{f||(f=!0,mi(fl,`RPC '${t}' stream ${i} transport errored. Name:`,e.name,`Message:`,e.message),p.At(new z(R.UNAVAILABLE,`The operation could not be completed`)))})),pl(u,An.EventType.MESSAGE,(e=>{if(!f){let n=e.data[0];P(!!n,16349);let r=n,a=r?.error||r[0]?.error;if(a){M(fl,`RPC '${t}' stream ${i} received error:`,a);let e=a.status,n=function(e){let t=K[e];if(t!==void 0)return Cs(t)}(e),r=a.message;e===`NOT_FOUND`&&r.includes(`database`)&&r.includes(`does not exist`)&&r.includes(this.databaseId.database)&&mi(`Database '${this.databaseId.database}' not found. Please check your project configuration.`),n===void 0&&(n=R.INTERNAL,r=`Unknown error status: `+e+` with message `+a.message),f=!0,p.At(new z(n,r)),u.close()}else M(fl,`RPC '${t}' stream ${i} received:`,n),p.Vt(n)}})),e.ft(),setTimeout((()=>{p.It()}),0),p}terminate(){this.dt.forEach((e=>e.close())),this.dt=[]}St(e){this.dt.push(e)}Dt(e){this.dt=this.dt.filter((t=>t===e))}rt(e,t,n){super.rt(e,t,n),this.databaseInfo.apiKey&&(e[`x-goog-api-key`]=this.databaseInfo.apiKey)}createWebChannelTransport(){return In()}};function hl(e){return new ml(e)}ml.gt=!1;var gl=class{constructor(e,t,n=1e3,r=1.5,i=6e4){this.xt=e,this.timerId=t,this.Ct=n,this.Ft=r,this.Ot=i,this.Mt=0,this.Nt=null,this.Lt=Date.now(),this.reset()}reset(){this.Mt=0}Bt(){this.Mt=this.Ot}Ut(e){this.cancel();let t=Math.floor(this.Mt+this.kt()),n=Math.max(0,Date.now()-this.Lt),r=Math.max(0,t-n);r>0&&M(`ExponentialBackoff`,`Backing off for ${r} ms (base delay: ${this.Mt}
25 ms, delay with jitter: ${t} ms, last attempt: ${n} ms ago)`),this.Nt=this.xt.enqueueAfterDelay(this.timerId,r,(()=>(this.Lt=Date.now(),e()))),this.Mt*=this.Ft,this.Mt<this.Ct&&(this.Mt=this.Ct),this.Mt>this.Ot&&(this.Mt=this.Ot)}qt(){this.Nt!==null&&(this.Nt.skipDelay(),this.Nt=null)}cancel(){this.Nt!==null&&(this.Nt.cancel(),this.Nt=null)}kt(){return(Math.random()-.5)*this.Mt}},_l=`PersistentStream`,vl=class{constructor(e,t,n,r,i,a,o,s){this.xt=e,this.$t=n,this.Kt=r,this.connection=i,this.authCredentialsProvider=a,this.appCheckCredentialsProvider=o,this.listener=s,this.state=0,this.Wt=0,this.Qt=null,this.Gt=null,this.stream=null,this.zt=0,this.jt=new gl(e,t)}Ht(){return this.state===1||this.state===5||this.Jt()}Jt(){return this.state===2||this.state===3}start(){this.zt=0,this.state===4?this.Yt():this.auth()}async stop(){this.Ht()&&await this.close(0)}Zt(){this.state=0,this.jt.reset()}Xt(){this.Jt()&&this.Qt===null&&(this.Qt=this.xt.enqueueAfterDelay(this.$t,6e4,(()=>this.en())))}tn(e){this.nn(),this.stream.send(e)}async en(){if(this.Jt())return this.close(0)}nn(){this.Qt&&=(this.Qt.cancel(),null)}rn(){this.Gt&&=(this.Gt.cancel(),null)}async close(e,t){this.nn(),this.rn(),this.jt.cancel(),this.Wt++,e===4?t&&t.code===R.RESOURCE_EXHAUSTED?(pi(t.toString()),pi(`Using maximum backoff delay to prevent overloading the backend.`),this.jt.Bt()):t&&t.code===R.UNAUTHENTICATED&&this.state!==3&&(this.authCredentialsProvider.invalidateToken(),this.appCheckCredentialsProvider.invalidateToken()):this.jt.reset(),this.stream!==null&&(this.sn(),this.stream.close(),this.stream=null),this.state=e,await this.listener.ht(t)}sn(){}auth(){this.state=1;let e=this._n(this.Wt),t=this.Wt;Promise.all([this.authCredentialsProvider.getToken(),this.appCheckCredentialsProvider.getToken()]).then((([e,n])=>{this.Wt===t&&this.an(e,n)}),(t=>{e((()=>{let e=new z(R.UNKNOWN,`Fetching auth token failed: `+t.message);return this.un(e)}))}))}an(e,t){let n=this._n(this.Wt);this.stream=this.cn(e,t),this.stream.ut((()=>{n((()=>this.listener.ut()))})),this.stream.lt((()=>{n((()=>(this.state=2,this.Gt=this.xt.enqueueAfterDelay(this.Kt,1e4,(()=>(this.Jt()&&(this.state=3),Promise.resolve()))),this.listener.lt())))})),this.stream.ht((e=>{n((()=>this.un(e)))})),this.stream.onMessage((e=>{n((()=>++this.zt==1?this.En(e):this.onNext(e)))}))}Yt(){this.state=5,this.jt.Ut((async()=>{this.state=0,this.start()}))}un(e){return M(_l,`close with error: ${e}`),this.stream=null,this.close(4,e)}_n(e){return t=>{this.xt.enqueueAndForget((()=>this.Wt===e?t():(M(_l,`stream callback skipped by getCloseGuardedDispatcher.`),Promise.resolve())))}}},yl=class extends vl{constructor(e,t,n,r,i,a){super(e,`listen_stream_connection_backoff`,`listen_stream_idle`,`health_check_timeout`,t,n,r,a),this.serializer=i}cn(e,t){return this.connection.vt(`Listen`,e,t)}En(e){return this.onNext(e)}onNext(e){this.jt.reset();let t=bc(this.serializer,e),n=function(e){if(!(`targetChange`in e))return G.min();let t=e.targetChange;return t.targetIds&&t.targetIds.length?G.min():t.readTime?lc(t.readTime):G.min()}(e);return this.listener.hn(t,n)}Tn(e){let t={};t.database=_c(this.serializer),t.addTarget=function(e,t){let n,r=t.target;if(n=is(r)?{pipelineQuery:Dc(e,r)}:as(r)?{documents:Cc(e,r)}:{query:wc(e,r).be},n.targetId=t.targetId,t.resumeToken.approximateByteSize()>0){n.resumeToken=sc(e,t.resumeToken);let r=ic(e,t.expectedCount);r!==null&&(n.expectedCount=r)}else if(t.snapshotVersion.compareTo(G.min())>0){n.readTime=ac(e,t.snapshotVersion.toTimestamp());let r=ic(e,t.expectedCount);r!==null&&(n.expectedCount=r)}return n}(this.serializer,e);let n=Ec(this.serializer,e);n&&(t.labels=n),this.tn(t)}Pn(e){let t={};t.database=_c(this.serializer),t.removeTarget=e,this.tn(t)}},bl=class extends vl{constructor(e,t,n,r,i,a){super(e,`write_stream_connection_backoff`,`write_stream_idle`,`health_check_timeout`,t,n,r,a),this.serializer=i}get Rn(){return this.zt>0}start(){this.lastStreamToken=void 0,super.start()}sn(){this.Rn&&this.In([])}cn(e,t){return this.connection.vt(`Write`,e,t)}En(e){return P(!!e.streamToken,31322),this.lastStreamToken=e.streamToken,P(!e.writeResults||e.writeResults.length===0,55816),this.listener.An()}onNext(e){P(!!e.streamToken,12678),this.lastStreamToken=e.streamToken,this.jt.reset();let t=Sc(e.writeResults,e.commitTime),n=lc(e.commitTime);return this.listener.Vn(n,t)}dn(){let e={};e.database=_c(this.serializer),this.tn(e)}In(e){let t={streamToken:this.lastStreamToken,writes:e.map((e=>xc(this.serializer,e)))};this.tn(t)}},xl=class{},Sl=class extends xl{constructor(e,t,n,r){super(),this.authCredentials=e,this.appCheckCredentials=t,this.connection=n,this.serializer
25=r,this.fn=!1}mn(){if(this.fn)throw new z(R.FAILED_PRECONDITION,`The client has already been terminated.`)}tt(e,t,n,r){return this.mn(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then((([i,a])=>this.connection.tt(e,dc(t,n),r,i,a))).catch((e=>{throw e.name===`FirebaseError`?(e.code===R.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),e):new z(R.UNKNOWN,e.toString())}))}st(e,t,n,r,i){return this.mn(),Promise.all([this.authCredentials.getToken(),this.appCheckCredentials.getToken()]).then((([a,o])=>this.connection.st(e,dc(t,n),r,a,o,i))).catch((e=>{throw e.name===`FirebaseError`?(e.code===R.UNAUTHENTICATED&&(this.authCredentials.invalidateToken(),this.appCheckCredentials.invalidateToken()),e):new z(R.UNKNOWN,e.toString())}))}terminate(){this.fn=!0,this.connection.terminate()}};function Cl(e,t,n,r){return new Sl(e,t,n,r)}var wl=`ComponentProvider`,Tl=new Map;function El(e,t,n,r,i){return new aa(e,t,n,i.host,i.ssl,i.experimentalForceLongPolling,i.experimentalAutoDetectLongPolling,nl(i.experimentalLongPollingOptions),i.useFetchStreams,i.isUsingEmulator,r,i._customHeaders,i.grpcFlowControlWindow)}var Dl={didRun:!1,sequenceNumbersCollected:0,targetsRemoved:0,documentsRemoved:0},Ol=41943040,kl=class e{static withCacheSize(t){return new e(t,e.DEFAULT_COLLECTION_PERCENTILE,e.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT)}constructor(e,t,n){this.cacheSizeCollectionThreshold=e,this.percentileToCollect=t,this.maximumSequenceNumbersToCollect=n}};kl.DEFAULT_COLLECTION_PERCENTILE=10,kl.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT=1e3,kl.DEFAULT=new kl(Ol,kl.DEFAULT_COLLECTION_PERCENTILE,kl.DEFAULT_MAX_SEQUENCE_NUMBERS_TO_COLLECT),kl.DISABLED=new kl(-1,0,0);var Al=class{constructor(e,t){this.previousValue=e,t&&(t.sequenceNumberHandler=e=>this.pn(e),this.gn=e=>t.writeSequenceNumber(e))}pn(e){return this.previousValue=Math.max(e,this.previousValue),this.previousValue}next(){let e=++this.previousValue;return this.gn&&this.gn(e),e}};Al.yn=-1;var jl=`The current tab is not in the required state to perform this operation. It might be necessary to refresh the browser tab.`,Ml=class{constructor(){this.onCommittedListeners=[]}addOnCommittedListener(e){this.onCommittedListeners.push(e)}raiseOnCommittedEvent(){this.onCommittedListeners.forEach((e=>e()))}};async function Nl(e){if(e.code!==R.FAILED_PRECONDITION||e.message!==jl)throw e;M(`LocalStore`,`Unexpectedly lost primary lease`)}var Y=class e{constructor(e){this.nextCallback=null,this.catchCallback=null,this.result=void 0,this.error=void 0,this.isDone=!1,this.callbackAttached=!1,e((e=>{this.isDone=!0,this.result=e,this.nextCallback&&this.nextCallback(e)}),(e=>{this.isDone=!0,this.error=e,this.catchCallback&&this.catchCallback(e)}))}catch(e){return this.next(void 0,e)}next(t,n){return this.callbackAttached&&N(59440),this.callbackAttached=!0,this.isDone?this.error?this.wrapFailure(n,this.error):this.wrapSuccess(t,this.result):new e(((e,r)=>{this.nextCallback=n=>{this.wrapSuccess(t,n).next(e,r)},this.catchCallback=t=>{this.wrapFailure(n,t).next(e,r)}}))}toPromise(){return new Promise(((e,t)=>{this.next(e,t)}))}wrapUserFunction(t){try{let n=t();return n instanceof e?n:e.resolve(n)}catch(t){return e.reject(t)}}wrapSuccess(t,n){return t?this.wrapUserFunction((()=>t(n))):e.resolve(n)}wrapFailure(t,n){return t?this.wrapUserFunction((()=>t(n))):e.reject(n)}static resolve(t){return new e(((e,n)=>{e(t)}))}static reject(t){return new e(((e,n)=>{n(t)}))}static waitFor(t){return new e(((e,n)=>{let r=0,i=0,a=!1;t.forEach((t=>{++r,t.next((()=>{++i,a&&i===r&&e()}),(e=>n(e)))})),a=!0,i===r&&e()}))}static or(t){let n=e.resolve(!1);for(let r of t)n=n.next((t=>t?e.resolve(t):r()));return n}static forEach(e,t){let n=[];return e.forEach(((e,r)=>{n.push(t.call(this,e,r))})),this.waitFor(n)}static mapArray(t,n){return new e(((e,r)=>{let i=t.length,a=Array(i),o=0;for(let s=0;s<i;s++){let c=s;n(t[c]).next((t=>{a[c]=t,++o,o===i&&e(a)}),(e=>r(e)))}}))}static doWhile(t,n){return new e(((e,r)=>{let i=()=>{!0===t()?n().next((()=>{i()}),r):e()};i()}))}};function Pl(e){let t=e.match(/Android ([\d.]+)/i),n=t?t[1].split(`.`).slice(0,2).join(`.`):`-1`;return Number(n)}function Fl(e){return e.name===`IndexedDbTransactionError`}var Il=`LruGarbageCollector`,Ll=1048576;function Rl([e,t],[n,r]){let i=I(e,n);return i===0?I(t,r):i}var zl=class{constructor(e){this.Jn=e,this.buffer=new Ei(Rl),this.Yn=0}
25Zn(){return++this.Yn}Xn(e){let t=[e,this.Zn()];if(this.buffer.size<this.Jn)this.buffer=this.buffer.add(t);else{let e=this.buffer.last();Rl(t,e)<0&&(this.buffer=this.buffer.delete(e).add(t))}}get maxValue(){return this.buffer.last()[0]}},Bl=class{constructor(e,t,n){this.garbageCollector=e,this.asyncQueue=t,this.localStore=n,this.er=null}start(){this.garbageCollector.params.cacheSizeCollectionThreshold!==-1&&this.tr(6e4)}stop(){this.er&&=(this.er.cancel(),null)}get started(){return this.er!==null}tr(e){M(Il,`Garbage collection scheduled in ${e}ms`),this.er=this.asyncQueue.enqueueAfterDelay(`lru_garbage_collection`,e,(async()=>{this.er=null;try{await this.localStore.collectGarbage(this.garbageCollector)}catch(e){Fl(e)?M(Il,`Ignoring IndexedDB error during garbage collection: `,e):await Nl(e)}await this.tr(3e5)}))}},Vl=class{constructor(e,t){this.nr=e,this.params=t}calculateTargetCount(e,t){return this.nr.rr(e).next((e=>Math.floor(t/100*e)))}nthSequenceNumber(e,t){if(t===0)return Y.resolve(Al.yn);let n=new zl(t);return this.nr.forEachTarget(e,(e=>n.Xn(e.sequenceNumber))).next((()=>this.nr.ir(e,(e=>n.Xn(e))))).next((()=>n.maxValue))}removeTargets(e,t,n){return this.nr.removeTargets(e,t,n)}removeOrphanedDocuments(e,t){return this.nr.removeOrphanedDocuments(e,t)}collect(e,t){return this.params.cacheSizeCollectionThreshold===-1?(M(`LruGarbageCollector`,`Garbage collection skipped; disabled`),Y.resolve(Dl)):this.getCacheSize(e).next((n=>n<this.params.cacheSizeCollectionThreshold?(M(`LruGarbageCollector`,`Garbage collection skipped; Cache size ${n} is lower than threshold ${this.params.cacheSizeCollectionThreshold}`),Dl):this.sr(e,t)))}getCacheSize(e){return this.nr.getCacheSize(e)}sr(e,t){let n,r,i,a,o,s,c,l=Date.now();return this.calculateTargetCount(e,this.params.percentileToCollect).next((t=>(t>this.params.maximumSequenceNumbersToCollect?(M(`LruGarbageCollector`,`Capping sequence numbers to collect down to the maximum of ${this.params.maximumSequenceNumbersToCollect} from ${t}`),r=this.params.maximumSequenceNumbersToCollect):r=t,a=Date.now(),this.nthSequenceNumber(e,r)))).next((r=>(n=r,o=Date.now(),this.removeTargets(e,n,t)))).next((t=>(i=t,s=Date.now(),this.removeOrphanedDocuments(e,n)))).next((e=>(c=Date.now(),fi()<=_.DEBUG&&M(`LruGarbageCollector`,`LRU Garbage Collection\n\tCounted targets in ${a-l}ms\n\tDetermined least recently used ${r} in `+(o-a)+`ms
26\tRemoved ${i} targets in `+(s-o)+`ms
27\tRemoved ${e} documents in `+(c-s)+`ms
28Total Duration: ${c-l}ms`),Y.resolve({didRun:!0,sequenceNumbersCollected:r,targetsRemoved:i,documentsRemoved:e}))))}};function Hl(e,t){return new Vl(e,t)}var Ul=`firestore.googleapis.com`,Wl=!0,Gl=class{constructor(e){if(e.host===void 0){if(e.ssl!==void 0)throw new z(R.INVALID_ARGUMENT,`Can't provide ssl option if host option is not set`);this.host=Ul,this.ssl=Wl}else this.host=e.host,this.ssl=e.ssl??Wl;if(this.isUsingEmulator=e.emulatorOptions!==void 0,this.credentials=e.credentials,this.ignoreUndefinedProperties=!!e.ignoreUndefinedProperties,this.localCache=e.localCache,e._customHeaders&&(this._customHeaders={...e._customHeaders}),e.cacheSizeBytes===void 0)this.cacheSizeBytes=Ol;else{if(e.cacheSizeBytes!==-1&&e.cacheSizeBytes<Ll)throw new z(R.INVALID_ARGUMENT,`cacheSizeBytes must be at least 1048576`);this.cacheSizeBytes=e.cacheSizeBytes}if(Ri(`experimentalForceLongPolling`,e.experimentalForceLongPolling,`experimentalAutoDetectLongPolling`,e.experimentalAutoDetectLongPolling),this.experimentalForceLongPolling=!!e.experimentalForceLongPolling,this.experimentalAutoDetectLongPolling=this.experimentalForceLongPolling?!1:e.experimentalAutoDetectLongPolling===void 0||!!e.experimentalAutoDetectLongPolling,this.experimentalLongPollingOptions=nl(e.experimentalLongPollingOptions??{}),function(e){if(e.timeoutSeconds!==void 0){if(isNaN(e.timeoutSeconds))throw new z(R.INVALID_ARGUMENT,`invalid long polling timeout: ${e.timeoutSeconds} (must not be NaN)`);if(e.timeoutSeconds<5)throw new z(R.INVALID_ARGUMENT,`invalid long polling timeout: ${e.timeoutSeconds} (minimum allowed value is 5)`);if(e.timeoutSeconds>30)throw new z(R.INVALID_ARGUMENT,`invalid long polling timeout: ${e.timeoutSeconds} (maximum allowed value is 30)`)}}(this.experimentalLongPollingOptions),this.useFetchStreams=!!e.useFetchStreams,e.grpcFlowControlWindow!==void 0){if(typeof e.grpcFlowControlWindow!=`number`||e.grpcFlowControlWindow<=0||e.grpcFlowControlWindow>2147483647||!Number.isInteger(e.grpcFlowControlWindow))throw new z(R.INVALID_ARGUMENT,`grpcFlowControlWindow must be a positive integer and cannot exceed 2147483647`);this.grpcFlowControlWindow=e.grpcFlowControlWindow}}isEqual(e){return this.host===e.host&&this.ssl===e.ssl&&this.credentials===e.credentials&&this.cacheSizeBytes===e.cacheSizeBytes&&this.experimentalForceLongPolling===e.experimentalForceLongPolling&&this.experimentalAutoDetectLongPolling===e.experimentalAutoDetectLongPolling&&function(e,t){return e.timeoutSeconds===t.timeoutSeconds}(this.experimentalLongPollingOptions,e.experimentalLongPollingOptions)&&this.ignoreUndefinedProperties===e.ignoreUndefinedProperties&&this.useFetchStreams===e.useFetchStreams&&this.grpcFlowControlWindow===e.grpcFlowControlWindow&&function(e,t){if(e===t)return!0;
28if(!e||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let r of n)if(e[r]!==t[r])return!1;return!0}(this._customHeaders,e._customHeaders)}},Kl=class{constructor(e,t,n,r){this._authCredentials=e,this._appCheckCredentials=t,this._databaseId=n,this._app=r,this.type=`firestore-lite`,this._persistenceKey=`(lite)`,this._settings=new Gl({}),this._settingsFrozen=!1,this._emulatorOptions={},this._terminateTask=`notTerminated`}get app(){if(!this._app)throw new z(R.FAILED_PRECONDITION,`Firestore was not initialized using the Firebase SDK. 'app' is not available`);return this._app}get _initialized(){return this._settingsFrozen}get _terminated(){return this._terminateTask!==`notTerminated`}_setSettings(e){if(this._settingsFrozen)throw new z(R.FAILED_PRECONDITION,`Firestore has already been started and its settings can no longer be changed. You can only modify settings before calling any other methods on a Firestore object.`);this._settings=new Gl(e),this._emulatorOptions=e.emulatorOptions||{},e.credentials!==void 0&&(this._authCredentials=function(e){if(!e)return new Yc;switch(e.type){case`firstParty`:return new $c(e.sessionIndex||`0`,e.iamToken||null,e.authTokenFactory||null);case`provider`:return e.client;default:throw new z(R.INVALID_ARGUMENT,`makeAuthCredentialsProvider failed due to invalid credential type`)}}(e.credentials))}_getSettings(){return this._settings}_getEmulatorOptions(){return this._emulatorOptions}_freezeSettings(){return this._settingsFrozen=!0,this._settings}_delete(){return this._terminateTask===`notTerminated`&&(this._terminateTask=this._terminate()),this._terminateTask}async _restart(){this._terminateTask===`notTerminated`?await this._terminate():this._terminateTask=`notTerminated`}toJSON(){return{app:this._app,databaseId:this._databaseId,settings:this._settings}}_terminate(){return function(e){let t=Tl.get(e);t&&(M(wl,`Removing Datastore`),Tl.delete(e),t.terminate())}(this),Promise.resolve()}};function ql(e,t,n,r={}){e=Hi(e,Kl);let i=je(t),a=e._getSettings(),o={...a,emulatorOptions:e._getEmulatorOptions()},s=`${t}:${n}`;i&&Me(`https://${s}`),a.host!==Ul&&a.host!==s&&mi(`Host has been set in both settings() and connectFirestoreEmulator(), emulator host will be used.`);let c={...a,host:s,ssl:i,emulatorOptions:r};if(!ge(c,o)&&(e._setSettings(c),r.mockUserToken)){let t,n;if(typeof r.mockUserToken==`string`)t=r.mockUserToken,n=Kc.MOCK_USER;else{t=te(r.mockUserToken,e._app?.options.projectId);let i=r.mockUserToken.sub||r.mockUserToken.user_id;if(!i)throw new z(R.INVALID_ARGUMENT,`mockUserToken must contain 'sub' or 'user_id' field!`);n=new Kc(i)}e._authCredentials=new Xc(new Jc(t,n))}}var Jl=class e{constructor(e,t,n){this.converter=t,this._query=n,this.type=`query`,this.firestore=e}withConverter(t){return new e(this.firestore,t,this._query)}},Yl=class e{constructor(e,t,n){this.converter=t,this._key=n,this.type=`document`,this.firestore=e}get _path(){return this._key.path}get id(){return this._key.path.lastSegment()}get path(){return this._key.path.canonicalString()}get parent(){return new Xl(this.firestore,this.converter,this._key.path.popLast())}withConverter(t){return new e(this.firestore,t,this._key)}toJSON(){return{type:e._jsonSchemaVersion,referencePath:this._key.toString()}}static fromJSON(t,n,r){if(Ui(n,e._jsonSchema))return new e(t,r||null,new V(B.fromString(n.referencePath)))}};Yl._jsonSchemaVersion=`firestore/documentReference/1.0`,Yl._jsonSchema={type:H(`string`,Yl._jsonSchemaVersion),referencePath:H(`string`)};var Xl=class e extends Jl{constructor(e,t,n){super(e,t,cs(n)),this._path=n,this.type=`collection`}get id(){return this._query.path.lastSegment()}get path(){return this._query.path.canonicalString()}get parent(){let e=this._path.popLast();return e.isEmpty()?null:new Yl(this.firestore,null,new V(e))}withConverter(t){return new e(this.firestore,t,this._path)}};function Zl(e,t,...n){if(e=Ae(e),arguments.length===1&&(t=vi.newId()),Li(`doc`,`path`,t),e instanceof Kl){let r=B.fromString(t,...n);return zi(r),new Yl(e,null,new V(r))}{if(!(e instanceof Yl||e instanceof Xl))throw new z(R.INVALID_ARGUMENT,`Expected first argument to doc() to be a CollectionReference, a DocumentReference or FirebaseFirestore`);let r=e._path.child(B.fromString(t,...n));return zi(r),new Yl(e.firestore,e instanceof Xl?e.converter:null,new V(r))}}var Ql=class e{constructor(e){this._values=(e||[]).map((e=>e))}toArray(){return this._values.map((e=>e))}isEqual(e){return function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0}(this._values,e._values)}toJSON(){return{type:e._jsonSchemaVersion,vectorValues:this._values}}
28static fromJSON(t){if(Ui(t,e._jsonSchema)){if(Array.isArray(t.vectorValues)&&t.vectorValues.every((e=>typeof e==`number`)))return new e(t.vectorValues);throw new z(R.INVALID_ARGUMENT,`Expected 'vectorValues' field to be a number array`)}}};Ql._jsonSchemaVersion=`firestore/vectorValue/1.0`,Ql._jsonSchema={type:H(`string`,Ql._jsonSchemaVersion),vectorValues:H(`object`)};var $l=/^__.*__$/,eu=class{constructor(e,t,n){this.data=e,this.fieldMask=t,this.fieldTransforms=n}toMutation(e,t){return new bo(e,this.data,this.fieldMask,t,this.fieldTransforms)}};function tu(e){switch(e){case 0:case 2:case 1:return!0;case 3:case 4:return!1;default:throw N(40011,{dataSource:e})}}var nu=class e{constructor(e,t,n,r,i,a){this.settings=e,this.databaseId=t,this.serializer=n,this.ignoreUndefinedProperties=r,i===void 0&&this.validatePath(),this.fieldTransforms=i||[],this.fieldMask=a||[]}get path(){return this.settings.path}get dataSource(){return this.settings.dataSource}contextWith(t){return new e({...this.settings,...t},this.databaseId,this.serializer,this.ignoreUndefinedProperties,this.fieldTransforms,this.fieldMask)}childContextForField(e){let t=this.path?.child(e),n=this.contextWith({path:t,arrayElement:!1});return n.validatePathSegment(e),n}childContextForFieldPath(e){let t=this.path?.child(e),n=this.contextWith({path:t,arrayElement:!1});return n.validatePath(),n}childContextForArray(e){return this.contextWith({path:void 0,arrayElement:!0})}createError(e){return hu(e,this.settings.methodName,this.settings.hasConverter||!1,this.path,this.settings.targetDoc)}contains(e){return this.fieldMask.find((t=>e.isPrefixOf(t)))!==void 0||this.fieldTransforms.find((t=>e.isPrefixOf(t.field)))!==void 0}validatePath(){if(this.path)for(let e=0;e<this.path.length;e++)this.validatePathSegment(this.path.get(e))}validatePathSegment(e){if(e.length===0)throw this.createError(`Document fields must not be empty`);if(tu(this.dataSource)&&$l.test(e))throw this.createError(`Document fields cannot begin and end with "__"`)}},ru=class{constructor(e,t,n){this.databaseId=e,this.ignoreUndefinedProperties=t,this.serializer=n||Bc(e)}createContext(e,t,n,r=!1){return new nu({dataSource:e,methodName:t,targetDoc:n,path:ji.emptyPath(),arrayElement:!1,hasConverter:r},this.databaseId,this.serializer,this.ignoreUndefinedProperties)}};function iu(e){let t=e._freezeSettings(),n=Bc(e._databaseId);return new ru(e._databaseId,!!t.ignoreUndefinedProperties,n)}var au=class e extends Wc{_toFieldTransform(e){if(e.dataSource!==2)throw e.dataSource===1?e.createError(`${this._methodName}() can only appear at the top level of your update data`):e.createError(`${this._methodName}() cannot be used with set() unless you pass {merge:true}`);return e.fieldMask.push(e.path),null}isEqual(t){return t instanceof e}};function ou(e,t,n,r){let i=e.createContext(1,t,n);du(`Data must be an object, but it was:`,i,r);let a=[],o=Va.empty();return Pi(r,((e,r)=>{let s=mu(t,e,n);r=Ae(r);let c=i.childContextForFieldPath(s);if(r instanceof au)a.push(s);else{let e=cu(r,c);e!=null&&(a.push(s),o.set(s,e))}})),new eu(o,new Mi(a),i.fieldTransforms)}function su(e,t,n,r,i,a){let o=e.createContext(1,t,n),s=[fu(t,r,n)],c=[i];if(a.length%2!=0)throw new z(R.INVALID_ARGUMENT,`Function ${t}() needs to be called with an even number of arguments that alternate between field names and values.`);for(let e=0;e<a.length;e+=2)s.push(fu(t,a[e])),c.push(a[e+1]);let l=[],u=Va.empty();for(let e=s.length-1;e>=0;--e)if(!gu(l,s[e])){let t=s[e],n=c[e];n=Ae(n);let r=o.childContextForFieldPath(t);if(n instanceof au)l.push(t);else{let e=cu(n,r);e!=null&&(l.push(t),u.set(t,e))}}return new eu(u,new Mi(l),o.fieldTransforms)}function cu(e,t,n){if(uu(e=Ae(e)))return du(`Unsupported field value:`,t,e),lu(e,t);if(e instanceof Wc)return function(e,t){if(!tu(t.dataSource))throw t.createError(`${e._methodName}() can only be used with update() and set()`);if(!t.path)throw t.createError(`${e._methodName}() is not currently supported inside arrays`);let n=e._toFieldTransform(t);n&&t.fieldTransforms.push(n)}(e,t),null;if(e===void 0&&t.ignoreUndefinedProperties)return null;if(t.path&&t.fieldMask.push(t.path),e instanceof Array){if(t.settings.arrayElement&&t.dataSource!==4)throw t.createError(`Nested arrays are not supported`);return function(e,t){let n=[],r=0;for(let i of e){let e=cu(i,t.childContextForArray(r));e??={nullValue:`NULL_VALUE`},n.push(e),r++}return{arrayValue:{values:n}}}(e,t)}
28return function(e,t,n){if((e=Ae(e))===null)return{nullValue:`NULL_VALUE`};if(typeof e==`number`)return Ga(t.serializer,e);if(typeof e==`boolean`)return{booleanValue:e};if(typeof e==`string`)return{stringValue:e};if(e instanceof Date){let n=Ki.fromDate(e);return{timestampValue:ac(t.serializer,n)}}if(e instanceof Ki){let n=new Ki(e.seconds,1e3*Math.floor(e.nanoseconds/1e3));return{timestampValue:ac(t.serializer,n)}}if(e instanceof Gc)return{geoPointValue:{latitude:e.latitude,longitude:e.longitude}};if(e instanceof Vc)return{bytesValue:sc(t.serializer,e._byteString)};if(e instanceof Yl){let n=t.databaseId,r=e.firestore._databaseId;if(!r.isEqual(n))throw t.createError(`Document reference is for database ${r.projectId}/${r.database} but should be for database ${n.projectId}/${n.database}`);return{referenceValue:uc(e.firestore._databaseId||t.databaseId,e._key.path)}}if(e instanceof Ql)return function(e,t){let n=e instanceof Ql?e.toArray():e;return{mapValue:{fields:{[ma]:{stringValue:_a},[va]:{arrayValue:{values:n.map((e=>{if(typeof e!=`number`)throw t.createError(`VectorValues must only contain numeric values.`);return Ua(t.serializer,e)}))}}}}}}(e,t);if(Lc(e))return e._toProto(t.serializer);throw t.createError(`Unsupported field value: ${Vi(e)}`)}(e,t)}function lu(e,t){let n={};return Ii(e)?t.path&&t.path.length>0&&t.fieldMask.push(t.path):Pi(e,((e,r)=>{let i=cu(r,t.childContextForField(e));i!=null&&(n[e]=i)})),{mapValue:{fields:n}}}function uu(e){return!(typeof e!=`object`||!e||e instanceof Array||e instanceof Date||e instanceof Ki||e instanceof Gc||e instanceof Vc||e instanceof Yl||e instanceof Wc||e instanceof Ql||Lc(e))}function du(e,t,n){if(!uu(n)||!Bi(n)){let r=Vi(n);throw r===`an object`?t.createError(e+` a custom object`):t.createError(e+` `+r)}}function fu(e,t,n){if((t=Ae(t))instanceof Hc)return t._internalPath;if(typeof t==`string`)return mu(e,t);throw hu(`Field path arguments must be of type string or `,e,!1,void 0,n)}var pu=RegExp(`[~\\*/\\[\\]]`);function mu(e,t,n){if(t.search(pu)>=0)throw hu(`Invalid field path (${t}). Paths must not contain '~', '*', '/', '[', or ']'`,e,!1,void 0,n);try{return new Hc(...t.split(`.`))._internalPath}catch{throw hu(`Invalid field path (${t}). Paths must not be empty, begin with '.', end with '.', or contain '..'`,e,!1,void 0,n)}}function hu(e,t,n,r,i){let a=r&&!r.isEmpty(),o=i!==void 0,s=`Function ${t}() called with invalid data`;n&&(s+=" (via `toFirestore()`)"),s+=`. `;let c=``;return(a||o)&&(c+=` (found`,a&&(c+=` in field ${r}`),o&&(c+=` in document ${i}`),c+=`)`),new z(R.INVALID_ARGUMENT,s+e+c)}function gu(e,t){return e.some((e=>e.isEqual(t)))}function _u(e){return typeof e._readUserData==`function`}var vu=class e{constructor(e){this.optionDefinitions=e}_getKnownOptions(t,n){let r=Va.empty();for(let i in this.optionDefinitions)if(this.optionDefinitions.hasOwnProperty(i)){let a=this.optionDefinitions[i];if(i in t){let o=t[i],s;a.nestedOptions&&Bi(o)?s={mapValue:{fields:new e(a.nestedOptions).getOptionsProto(n,o)}}:o&&(s=cu(o,n)??void 0),s&&r.set(ji.fromServerFormat(a.serverName),s)}}return r}getOptionsProto(e,t,n){let r=this._getKnownOptions(t,e);if(n){let t=new Map(Fi(n,((t,n)=>[ji.fromServerFormat(n),t===void 0?null:cu(t,e)])));r.setAll(t)}return r.value.mapValue.fields??{}}};function yu(e){return typeof e==`object`&&!!e&&!!(`nullValue`in e&&(e.nullValue===null||e.nullValue===`NULL_VALUE`)||`booleanValue`in e&&(e.booleanValue===null||typeof e.booleanValue==`boolean`)||`integerValue`in e&&(e.integerValue===null||typeof e.integerValue==`number`||typeof e.integerValue==`string`)||`doubleValue`in e&&(e.doubleValue===null||typeof e.doubleValue==`number`)||`timestampValue`in e&&(e.timestampValue===null||function(e){return typeof e==`object`&&!!e&&`seconds`in e&&(e.seconds===null||typeof e.seconds==`number`||typeof e.seconds==`string`)&&`nanos`in e&&(e.nanos===null||typeof e.nanos==`number`)}(e.timestampValue))||`stringValue`in e&&(e.stringValue===null||typeof e.stringValue==`string`)||`bytesValue`in e&&(e.bytesValue===null||e.bytesValue instanceof Uint8Array)||`referenceValue`in e&&(e.referenceValue===null||typeof e.referenceValue==`string`)||`geoPointValue`in e&&(e.geoPointValue===null||function(e){return typeof e==`object`&&!!e&&`latitude`in e&&(e.latitude===null||typeof e.latitude==`number`)&&`longitude`in e&&(e.longitude===null||typeof e.longitude==`number`)}(e.geoPointValue))||`arrayValue`in e&&(e.arrayValue===null||function(e){return typeof e==`object`&&!!e&&!(!(`values`in e)||e.values!==null&&!Array.isArray(e.values))}(e.arrayValue))||`mapValue`in e&&(e.mapValue===null||function(e){return typeof e==`object`&&!!e&&!(!(`fields`in e)||e.fields!==null&&!Bi(e.fields))}(e.mapValue))||`fieldReferenceValue`in e&&(e.fieldReferenceValue===null||typeof e.fieldReferenceValue==`string`)||`functionValue`in e&&(e.functionValue===null||function(e){return typeof e==`object`&&!!e&&!(!(`name`in e)||e.name!==null&&typeof e.name!=`string`||!(`args`in e)||e.args!==null&&!Array.isArray(e.args))}(e.functionValue))||`pipelineValue`in e&&(e.pipelineValue===null||function(e){return typeof e==`object`&&!!e&&!(!(`stages`in e)||e.stages!==null&&!Array.isArray(e.stages))}(e.pipelineValue)))}function bu(e){return new Ql(e)}function X(e){let t;return e instanceof Cu?e:(t=Bi(e)?Ru(e):e instanceof Array?zu(e):Nu(e,void 0),t)}function xu(e){if(e instanceof Cu)return e;if(e instanceof Ql)return Mu(e);if(Array.isArray(e))return Mu(bu(e));throw Error(`Unsupported value: `+typeof e)}function Su(e){return pa(e)?ku(e):X(e)}var Cu=class{constructor(){this._protoValueType=`ProtoValue`}add(e){return new Z(`add`,[this,X(e)],`add`)}asBoolean(){if(this instanceof Pu)return this;if(this instanceof ju)return new Iu(this);if(this instanceof Ou)return new Lu(this);if(this instanceof Z)return new Fu(this);throw new z(`invalid-argument`,`Conversion of type ${typeof this} to BooleanExpression not supported.`)}subtract(e){return new Z(`subtract`,[this,X(e)],`subtract`)}multiply(e){return new Z(`multiply`,[this,X(e)],`multiply`)}divide(e){return new Z(`divide`,[this,X(e)],`divide`)}mod(e){return new Z(`mod`,[this,X(e)],`mod`)}equal(e){return new Z(`equal`,[this,X(e)],`equal`).asBoolean()}notEqual(e){return new Z(`not_equal`,[this,X(e)],`notEqual`).asBoolean()}lessThan(e){return new Z(`less_than`,[this,X(e)],`lessThan`).asBoolean()}lessThanOrEqual(e){return new Z(`less_than_or_equal`,[this,X(e)],`lessThanOrEqual`).asBoolean()}greaterThan(e){return new Z(`greater_than`,[this,X(e)],`greaterThan`).asBoolean()}greaterThanOrEqual(e){return new Z(`greater_than_or_equal`,[this,X(e)],`greaterThanOrEqual`).asBoolean()}arrayConcat(e,...t){let n=[e,...t].map((e=>X(e)));return new Z(`array_concat`,[this,...n],`arrayConcat`)}arrayContains(e){return new Z(`array_contains`,[this,X(e)],`arrayContains`).asBoolean()}arrayContainsAll(e){let t=Array.isArray(e)?new Du(e.map(X),`arrayContainsAll`):e;return new Z(`array_contains_all`,[this,t],`arrayContainsAll`).asBoolean()}arrayContainsAny(e){let t=Array.isArray(e)?new Du(e.map(X),`arrayContainsAny`):e;return new Z(`array_contains_any`,[this,t],`arrayContainsAny`).asBoolean()}arrayReverse(){return new Z(`array_reverse`,[this])}arrayLength(){return new Z(`array_length`,[this],`arrayLength`)}equalAny(e){let t=Array.isArray(e)?new Du(e.map(X),`equalAny`):e;return new Z(`equal_any`,[this,t],`equalAny`).asBoolean()}notEqualAny(e){let t=Array.isArray(e)?new Du(e.map(X),`notEqualAny`):e;return new Z(`not_equal_any`,[this,t],`notEqualAny`).asBoolean()}exists(){return new Z(`exists`,[this],`exists`).asBoolean()}charLength(){return new Z(`char_length`,[this],`charLength`)}like(e){return new Z(`like`,[this,X(e)],`like`).asBoolean()}regexContains(e){return new Z(`regex_contains`,[this,X(e)],`regexContains`).asBoolean()}regexFind(e){return new Z(`regex_find`,[this,X(e)],`regexFind`)}regexFindAll(e){return new Z(`regex_find_all`,[this,X(e)],`regexFindAll`)}regexMatch(e){return new Z(`regex_match`,[this,X(e)],`regexMatch`).asBoolean()}stringContains(e){return new Z(`string_contains`,[this,X(e)],`str
28ingContains`).asBoolean()}startsWith(e){return new Z(`starts_with`,[this,X(e)],`startsWith`).asBoolean()}endsWith(e){return new Z(`ends_with`,[this,X(e)],`endsWith`).asBoolean()}toLower(){return new Z(`to_lower`,[this],`toLower`)}toUpper(){return new Z(`to_upper`,[this],`toUpper`)}trim(e){let t=[this];return e&&t.push(X(e)),new Z(`trim`,t,`trim`)}ltrim(e){let t=[this];return e&&t.push(X(e)),new Z(`ltrim`,t,`ltrim`)}rtrim(e){let t=[this];return e&&t.push(X(e)),new Z(`rtrim`,t,`rtrim`)}type(){return new Z(`type`,[this])}isType(e){return new Z(`is_type`,[this,Mu(e)],`isType`).asBoolean()}stringConcat(e,...t){let n=[e,...t].map(X);return new Z(`string_concat`,[this,...n],`stringConcat`)}stringIndexOf(e){return new Z(`string_index_of`,[this,X(e)],`stringIndexOf`)}stringRepeat(e){return new Z(`string_repeat`,[this,X(e)],`stringRepeat`)}stringReplaceAll(e,t){return new Z(`string_replace_all`,[this,X(e),X(t)],`stringReplaceAll`)}stringReplaceOne(e,t){return new Z(`string_replace_one`,[this,X(e),X(t)],`stringReplaceOne`)}concat(e,...t){let n=[e,...t].map(X);return new Z(`concat`,[this,...n],`concat`)}reverse(){return new Z(`reverse`,[this],`reverse`)}arrayFilter(e,t){return new Z(`array_filter`,[this,X(e),t],`arrayFilter`)}arrayTransform(e,t){return new Z(`array_transform`,[this,X(e),t],`arrayTransform`)}arrayTransformWithIndex(e,t,n){return new Z(`array_transform`,[this,X(e),X(t),n],`arrayTransformWithIndex`)}arraySlice(e,t){let n=[this,X(e)];return t!==void 0&&n.push(X(t)),new Z(`array_slice`,n,`arraySlice`)}arrayFirst(){return new Z(`array_first`,[this],`arrayFirst`)}arrayFirstN(e){return new Z(`array_first_n`,[this,X(e)],`arrayFirstN`)}arrayLast(){return new Z(`array_last`,[this],`arrayLast`)}arrayLastN(e){return new Z(`array_last_n`,[this,X(e)],`arrayLastN`)}arrayMaximum(){return new Z(`maximum`,[this],`arrayMaximum`)}arrayMaximumN(e){return new Z(`maximum_n`,[this,X(e)],`arrayMaximumN`)}arrayMinimum(){return new Z(`minimum`,[this],`arrayMinimum`)}arrayMinimumN(e){return new Z(`minimum_n`,[this,X(e)],`arrayMinimumN`)}arrayIndexOf(e){return new Z(`array_index_of`,[this,X(e),X(`first`)],`arrayIndexOf`)}arrayLastIndexOf(e){return new Z(`array_index_of`,[this,X(e),X(`last`)],`arrayLastIndexOf`)}arrayIndexOfAll(e){return new Z(`array_index_of_all`,[this,X(e)],`arrayIndexOfAll`)}byteLength(){return new Z(`byte_length`,[this],`byteLength`)}ceil(){return new Z(`ceil`,[this])}floor(){return new Z(`floor`,[this])}abs(){return new Z(`abs`,[this])}exp(){return new Z(`exp`,[this])}mapGet(e){return new Z(`map_get`,[this,Mu(e)],`mapGet`)}mapSet(e,t,...n){return new Z(`map_set`,[this,X(e),X(t),...n.map(X)],`mapSet`)}mapKeys(){return new Z(`map_keys`,[this],`mapKeys`)}mapValues(){return new Z(`map_values`,[this],`mapValues`)}mapEntries(){return new Z(`map_entries`,[this],`mapEntries`)}getField(e){return new Z(`get_field`,[this,X(e)],`get_field`)}count(){return wu._create(`count`,[this],`count`)}sum(){return wu._create(`sum`,[this],`sum`)}average(){return wu._create(`average`,[this],`average`)}minimum(){return wu._create(`minimum`,[this],`minimum`)}maximum(){return wu._create(`maximum`,[this],`maximum`)}first(){return wu._create(`first`,[this],`first`)}last(){return wu._create(`last`,[this],`last`)}arrayAgg(){return wu._create(`array_agg`,[this],`arrayAgg`)}arrayAggDistinct(){return wu._create(`array_agg_distinct`,[this],`arrayAggDistinct`)}countDistinct(){return wu._create(`count_distinct`,[this],`countDistinct`)}logicalMaximum(e,...t){let n=[e,...t];return new Z(`maximum`,[this,...n.map(X)],`logicalMaximum`)}logicalMinimum(e,...t){let n=[e,...t];return new Z(`minimum`,[this,...n.map(X)],`minimum`)}vectorLength(){return new Z(`vector_length`,[this],`vectorLength`)}cosineDistance(e){return new Z(`cosine_distance`,[this,xu(e)],`cosineDistance`)}dotProduct(e){return new Z(`dot_product`,[this,xu(e)],`dotProduct`)}euclideanDistance(e){return new Z(`euclidean_distance`,[this,xu(e)],`euclideanDistance`)}unixMicrosToTimestamp(){return new Z(`unix_micros_to_timestamp`,[this],`unixMicrosToTimestamp`)}timestampToUnixMicros(){return new Z(`timestamp_to_unix_micros`,[this],`timestampToUnixMicros`)}unixMillisToTimestamp(){return new Z(`unix_millis_to_timestamp`,[this],`unixMillisToTimestamp`)}timestampToUnixMillis(){return new Z(`timestamp_to_unix_millis`,[this],`timestampToUnixMillis`)}unixSecondsToTimestamp(){return new Z(`unix_seconds_to_timestamp`,[this],`unixSecondsToTimestamp`)}timestampToUnixSeconds(){return new Z(`timestamp_to_unix_seconds`,[this],`timestampToUnixSeconds`)}timestampAdd(e,t){return new Z(`timestamp_add`,[this,X(e),X(t)],`timestampAdd`)}timestampSubtract(e,t){return new Z(`timestamp_subtract`,[this,X(e),X(t)],`timestampSubtract`)}timestampDiff(e,t){return new Z(`timestamp_diff`,[this,Su(e),X(t)],`timestampDiff`)}timestampExtract(e,t){let n=[this,X(e)];return t&&n.push(X(t)),new Z(`timestamp_extract`,n,`timestampExtract`)}documentId(){return new Z(`document_id`,[this],`documentId`)}parent(){return new Z(`parent`,[this],`parent`)}
28substring(e,t){let n=X(e);return new Z(`substring`,t===void 0?[this,n]:[this,n,X(t)],`substring`)}arrayGet(e){return new Z(`array_get`,[this,X(e)],`arrayGet`)}isError(){return new Z(`is_error`,[this],`isError`).asBoolean()}ifError(e){let t=new Z(`if_error`,[this,X(e)],`ifError`);return e instanceof Pu?t.asBoolean():t}isAbsent(){return new Z(`is_absent`,[this],`isAbsent`).asBoolean()}mapRemove(e){return new Z(`map_remove`,[this,X(e)],`mapRemove`)}mapMerge(e,...t){let n=X(e),r=t.map(X);return new Z(`map_merge`,[this,n,...r],`mapMerge`)}pow(e){return new Z(`pow`,[this,X(e)])}trunc(e){return e===void 0?new Z(`trunc`,[this]):new Z(`trunc`,[this,X(e)],`trunc`)}round(e){return e===void 0?new Z(`round`,[this]):new Z(`round`,[this,X(e)],`round`)}collectionId(){return new Z(`collection_id`,[this])}length(){return new Z(`length`,[this])}ln(){return new Z(`ln`,[this])}sqrt(){return new Z(`sqrt`,[this])}stringReverse(){return new Z(`string_reverse`,[this])}ifAbsent(e){return new Z(`if_absent`,[this,X(e)],`ifAbsent`)}ifNull(e){return new Z(`if_null`,[this,X(e)],`ifNull`)}coalesce(e,...t){return new Z(`coalesce`,[this,X(e),...t.map(X)],`coalesce`)}join(e){return new Z(`join`,[this,X(e)],`join`)}log10(){return new Z(`log10`,[this])}arraySum(){return new Z(`sum`,[this])}split(e){return new Z(`split`,[this,X(e)])}timestampTruncate(e,t){let n=[this,X(e)];return t&&n.push(X(t)),new Z(`timestamp_trunc`,n)}ascending(){return Bu(this)}descending(){return Vu(this)}as(e){return new Eu(this,e,`as`)}},wu=class e{constructor(e,t){this.name=e,this.params=t,this.exprType=`AggregateFunction`,this._protoValueType=`ProtoValue`}static _create(t,n,r){let i=new e(t,n);return i._methodName=r,i}as(e){return new Tu(this,e,`as`)}_toProto(e){return{functionValue:{name:this.name,args:this.params.map((t=>t._toProto(e)))}}}_readUserData(e){e=this._methodName?e.contextWith({methodName:this._methodName}):e,this.params.forEach((t=>t._readUserData(e)))}},Tu=class{constructor(e,t,n){this.aggregate=e,this.alias=t,this._methodName=n}_readUserData(e){this.aggregate._readUserData(e)}},Eu=class{constructor(e,t,n){this.expr=e,this.alias=t,this._methodName=n,this.exprType=`AliasedExpression`,this.selectable=!0}_readUserData(e){this.expr._readUserData(e)}},Du=class extends Cu{constructor(e,t){super(),this.ur=e,this._methodName=t,this.expressionType=`ListOfExpressions`}_toProto(e){return{arrayValue:{values:this.ur.map((t=>t._toProto(e)))}}}_readUserData(e){this.ur.forEach((t=>t._readUserData(e)))}},Ou=class extends Cu{constructor(e,t){super(),this.fieldPath=e,this._methodName=t,this.expressionType=`Field`,this.selectable=!0}get _fieldPath(){return this.fieldPath}get fieldName(){return this.fieldPath.canonicalString()}get alias(){return this.fieldName}get expr(){return this}geoDistance(e){return new Z(`geo_distance`,[this,X(e)],`geoDistance`)}_toProto(e){return{fieldReferenceValue:this.fieldPath.canonicalString()}}_readUserData(e){}};function ku(e){return Au(e,`field`)}function Au(e,t){return new Ou(typeof e==`string`?Oi===e?Uc()._internalPath:fu(`field`,e):e._internalPath,t)}var ju=class e extends Cu{constructor(e,t){super(),this.value=e,this._methodName=t,this.expressionType=`Constant`}static _fromProto(t){let n=new e(t,void 0);return n._protoValue=t,n}_toProto(e){return P(this._protoValue!==void 0,237),this._protoValue}_getValue(){return this._protoValue}_readUserData(e){e=this._methodName?e.contextWith({methodName:this._methodName}):e,yu(this._protoValue)||(this._protoValue=cu(this.value,e))}};function Mu(e,t){return Nu(e,`constant`)}function Nu(e,t){let n=new ju(e,t);return typeof e==`boolean`?new Iu(n):n}var Z=class extends Cu{constructor(e,t,n,r){super(),this.name=e,this.params=t,this.expressionType=`Function`,this._optionsProto=void 0,n!==void 0&&(this._methodName=n),r!==void 0&&(this._options=r)}get _optionsUtil(){return new vu({})}_toProto(e){let t={functionValue:{name:this.name,args:this.params.map((t=>t._toProto(e)))}};return this._optionsProto&&(t.functionValue.options=this._optionsProto),t}_readUserData(e){e=this._methodName?e.contextWith({methodName:this._methodName}
28):e,this.params.forEach((t=>t._readUserData(e))),this._options&&(this._optionsProto=this._optionsUtil.getOptionsProto(e,this._options))}},Pu=class e extends Cu{get _methodName(){return this._expr._methodName}countIf(){return wu._create(`count_if`,[this],`countIf`)}not(){return new Z(`not`,[this],`not`).asBoolean()}conditional(e,t){return new Z(`conditional`,[this,e,t],`conditional`)}ifError(t){let n=X(t),r=new Z(`if_error`,[this,n],`ifError`);return n instanceof e?r.asBoolean():r}_toProto(e){return this._expr._toProto(e)}_readUserData(e){this._expr._readUserData(e)}},Fu=class extends Pu{constructor(e){super(),this._expr=e,this.expressionType=`Function`}},Iu=class extends Pu{constructor(e){super(),this._expr=e,this.expressionType=`Constant`}_getValue(){return this._expr._getValue()}},Lu=class extends Pu{constructor(e){super(),this._expr=e,this.expressionType=`Field`}};function Ru(e,t){let n=[];for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)){let r=e[t];n.push(Mu(t)),n.push(X(r))}return new Z(`map`,n,`map`)}function zu(e){return function(e,t){return new Z(`array`,e.map((e=>X(e))),t)}(e,`array`)}function Bu(e){return new Hu(Su(e),`ascending`,`ascending`)}function Vu(e){return new Hu(Su(e),`descending`,`descending`)}var Hu=class{constructor(e,t,n){this.expr=e,this.direction=t,this._methodName=n,this._protoValueType=`ProtoValue`}_toProto(e){return{mapValue:{fields:{direction:zc(this.direction),expression:this.expr._toProto(e)}}}}_readUserData(e){this.expr._readUserData(e)}},Uu=class{constructor(e){this.optionsProto=void 0,{rawOptions:this.rawOptions,...this.knownOptions}=e}_readUserData(e){this.optionsProto=this._optionsUtil.getOptionsProto(e,this.knownOptions,this.rawOptions)}_toProto(e){return{name:this._name,options:this.optionsProto}}},Wu=class extends Uu{get _name(){return`add_fields`}get _optionsUtil(){return new vu({})}constructor(e,t){super(t),this.fields=e}_toProto(e){return{...super._toProto(e),args:[Rc(e,this.fields)]}}_readUserData(e){super._readUserData(e),rd(this.fields,e)}},Gu=class extends Uu{get _name(){return`aggregate`}get _optionsUtil(){return new vu({})}constructor(e,t,n){super(n),this.groups=e,this.accumulators=t}_toProto(e){return{...super._toProto(e),args:[Rc(e,this.accumulators),Rc(e,this.groups)]}}_readUserData(e){super._readUserData(e),rd(this.groups,e),rd(this.accumulators,e)}},Ku=class extends Uu{get _name(){return`distinct`}get _optionsUtil(){return new vu({})}constructor(e,t){super(t),this.groups=e}_toProto(e){return{...super._toProto(e),args:[Rc(e,this.groups)]}}_readUserData(e){super._readUserData(e),rd(this.groups,e)}},qu=class extends Uu{get _name(){return`collection`}get _optionsUtil(){return new vu({forceIndex:{serverName:`force_index`}})}constructor(e,t){super(t),this.Er=e.startsWith(`/`)?e:`/`+e}_toProto(e){return{...super._toProto(e),args:[{referenceValue:this.Er}]}}_readUserData(e){super._readUserData(e)}},Ju=class extends Uu{get _name(){return`collection_group`}get _optionsUtil(){return new vu({forceIndex:{serverName:`force_index`}})}constructor(e,t){super(t),this.collectionId=e}_toProto(e){return{...super._toProto(e),args:[{referenceValue:``},{stringValue:this.collectionId}]}}_readUserData(e){super._readUserData(e)}},Yu=class extends Uu{get _name(){return`database`}get _optionsUtil(){return new vu({})}_toProto(e){return{...super._toProto(e)}}_readUserData(e){super._readUserData(e)}},Xu=class extends Uu{get _name(){return`documents`}get _optionsUtil(){return new vu({})}constructor(e,t){if(super(t),!e||e.length===0)throw new z(R.INVALID_ARGUMENT,`Empty document paths are not allowed in DocumentsSource`);let n=e.map((e=>e.startsWith(`/`)?e:`/`+e)),r=new Set(n);if(r.size!==n.length)throw new z(R.INVALID_ARGUMENT,`Duplicate document paths are not allowed in DocumentsSource`);this.hr=n,this.Tr=r}_toProto(e){return{...super._toProto(e),args:this.hr.map((e=>({referenceValue:e})))}}_readUserData(e){super._readUserData(e)}},Zu=class extends Uu{get _name(){return`where`}get _optionsUtil(){return new vu({})}constructor(e,t){super(t),this.condition=e}_toProto(e){return{...super._toProto(e),args:[this.condition._toProto(e)]}}_readUserData(e){super._readUserData(e),rd(this.condition,e)}},Qu=class extends Uu{get _name(){return`limit`}get _optionsUtil(){return new vu({})}constructor(e,t){P(!isNaN(e)&&e!==1/0&&e!==-1/0,34860),super(t),this.limit=e}_toProto(e){return{...super._toProto(e),args:[Ga(e,this.limit)]}}},$u=class extends Uu{get _name(){return`offset`}get _optionsUtil(){return new vu({})}constructor(e,t){super(t),this.offset=e}_toProto(e){return{...super._toProto(e),args:[Ga(e,this.offset)]}}},ed=class extends Uu{get _name(){return`select`}get _optionsUtil(){return new vu({})}constructor(e,t){super(t),this.selections=e}_toProto(e){return{...super._toProto(e),args:[Rc(e,this.selections)]}}_readUserData(e){super._readUserData(e),rd(this.selections,e)}},td=class extends Uu{get _name(){return`sort`}get _optionsUtil(){return new vu({})}constructor(e,t){super(t),this.orderings=e}_toProto(e){return{...super._toProto(e),args:this.orderings.map((t=>t._toProto(e)))}}_readUserData(e){super._readUserData(e),rd(this.orderings,e)}},nd=class e extends Uu{get _name(){return`replace_with`}get _optionsUtil(){return new vu({})}constructor(e,t){super(t),this.map=e}_toProto(t){return{...super._toProto(t),args:[this.map._toProto(t),zc(e.Pr)]}}_readUserData(e){super._readUserData(e),rd(this.map,e)}};nd.Pr=`full_replace`;function rd(e,t){return _u(e)?e._readUserData(t):Array.isArray(e)||e instanceof Map?e.forEach((e=>e._readUserData(t))):Object.values(e).forEach((e=>e._readUserData(t))),e}var Q=class e{constructor(e,t){this.type=e,this.value=t}static dr(){return new e(`ERROR`,void 0)}static mr(){return new e(`UNSET`,void 0)}static pr(){return new e(`NULL`,ya)}static newValue(t){return Pa(t)?new e(`NULL`,ya):function(e){return!!e&&`booleanValue`in e}(t)?new e(`BOOLEAN`,t):Aa(t)?new e(`INT`,t):ja(t)?new e(`DOUBLE`,t):function(e){return!!e&&`timestampValue`in e&&!!e.timestampValue}(t)?new e(`TIMESTAMP`,t):function(e){return!!e&&`stringValue`in e}(t)?new e(`STRING`,t):function(e){return!!e&&`bytesValue`in e}(t)?new e(`BYTES`,t):t.referenceValue?new e(`REFERENCE`,t):t.geoPointValue?new e(`GEO_POINT`,t):Na(t)?new e(`ARRAY`,t):La(t)?new e(`VECTOR`,t):Ia(t)?new e(`MAP`,t):new e(`ERROR`,void 0)}gr(){return this.type===`ERROR`||this.type===`UNSET`}yr(){return this.type===`NULL`}};function id(e){if(!e.gr())return e.value}function ad(e){return e instanceof Pu?e._expr:e}function $(e){if((e=ad(e))instanceof Ou)return new od(e);if(e instanceof ju)return new sd(e);if(e instanceof Du)return new cd(e);
28if(e instanceof Z){if(e.name===`add`)return new hd(e);if(e.name===`subtract`)return new gd(e);if(e.name===`multiply`)return new _d(e);if(e.name===`divide`)return new vd(e);if(e.name===`mod`)return new yd(e);if(e.name===`and`)return new bd(e);if(e.name===`equal`)return new Id(e);if(e.name===`not_equal`)return new Ld(e);if(e.name===`less_than`)return new Rd(e);if(e.name===`less_than_or_equal`)return new zd(e);if(e.name===`greater_than`)return new Bd(e);if(e.name===`greater_than_or_equal`)return new Vd(e);if(e.name===`array_concat`)return new Hd(e);if(e.name===`array_reverse`)return new Ud(e);if(e.name===`array_contains`)return new Wd(e);if(e.name===`array_contains_all`)return new Gd(e);if(e.name===`array_contains_any`)return new Kd(e);if(e.name===`array_length`)return new qd(e);if(e.name===`array_element`)return new Jd(e);if(e.name===`equal_any`)return new wd(e);if(e.name===`not_equal_any`)return new Td(e);if(e.name===`is_nan`)return new Ed(e);if(e.name===`is_not_nan`)return new Dd(e);if(e.name===`is_null`)return new Od(e);if(e.name===`is_not_null`)return new kd(e);if(e.name===`is_error`)return new Ad(e);if(e.name===`exists`)return new jd(e);if(e.name===`not`)return new xd(e);if(e.name===`or`)return new Sd(e);if(e.name===`xor`)return new Cd(e);if(e.name===`conditional`)return new Md(e);if(e.name===`maximum`)return new Nd(e);if(e.name===`minimum`)return new Pd(e);if(e.name===`reverse`)return new Yd(e);if(e.name===`replace_first`)return new Xd(e);if(e.name===`replace_all`)return new Zd(e);if(e.name===`char_length`)return new Qd(e);if(e.name===`byte_length`)return new $d(e);if(e.name===`like`)return new tf(e);if(e.name===`regex_contains`)return new nf(e);if(e.name===`regex_match`)return new rf(e);if(e.name===`string_contains`)return new af(e);if(e.name===`starts_with`)return new of(e);if(e.name===`ends_with`)return new sf(e);if(e.name===`to_lower`)return new cf(e);if(e.name===`to_upper`)return new lf(e);if(e.name===`trim`)return new uf(e);if(e.name===`string_concat`)return new df(e);if(e.name===`map_get`)return new ff(e);if(e.name===`cosine_distance`)return new mf(e);if(e.name===`dot_product`)return new hf(e);if(e.name===`euclidean_distance`)return new gf(e);if(e.name===`vector_length`)return new _f(e);if(e.name===`unix_micros_to_timestamp`)return new Mf(e);if(e.name===`timestamp_to_unix_micros`)return new If(e);if(e.name===`unix_millis_to_timestamp`)return new Nf(e);if(e.name===`timestamp_to_unix_millis`)return new Lf(e);if(e.name===`unix_seconds_to_timestamp`)return new Pf(e);if(e.name===`timestamp_to_unix_seconds`)return new Rf(e);if(e.name===`timestamp_add`)return new Bf(e);if(e.name===`timestamp_subtract`)return new Vf(e)}throw Error(`Unknown Expr : ${e}`)}var od=class{constructor(e){this.expr=e}evaluate(e,t){if(this.expr.fieldName===Oi)return Q.newValue({referenceValue:pc(e.serializer,t.key)});if(this.expr.fieldName===`__update_time__`)return Q.newValue({timestampValue:cc(e.serializer,t.version)});if(this.expr.fieldName===`__create_time__`)return Q.newValue({timestampValue:cc(e.serializer,t.createTime)});let n=t.data.field(this.expr._fieldPath);return n?na(n)?Q.newValue(function(e,t){if(e.serverTimestampBehavior===`estimate`)return{timestampValue:cc(e.serializer,G.fromTimestamp(ia(t)))};if(e.serverTimestampBehavior===`previous`){let e=ra(t);if(e)return e}return{nullValue:`NULL_VALUE`}}(e,n)):Q.newValue(n):Q.mr()}},sd=class{constructor(e){this.expr=e}evaluate(e,t){return Q.newValue(this.expr._getValue())}},cd=class{constructor(e){this.expr=e}evaluate(e,t){let n=this.expr.ur.map((n=>$(n).evaluate(e,t)));return n.some((e=>e.gr()))?Q.dr():Q.newValue({arrayValue:{values:n.map((e=>e.value))}})}};function ld(e){return ja(e)?Number(e.doubleValue):Number(e.integerValue)}function ud(e){return BigInt(e.integerValue)}var dd=BigInt(`0x7fffffffffffffff`),fd=-BigInt(`0x8000000000000000`),pd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length>=2,24778);let n=$(this.expr.params[0]).evaluate(e,t),r=$(this.expr.params[1]).evaluate(e,t),i=this.wr(n,r);for(let n of this.expr.params.slice(2)){let r=$(n).evaluate(e,t);i=this.wr(i,r)}return i}wr(e,t){if(e.gr()||t.gr())return Q.dr();
28if(e.yr()||t.yr())return Q.pr();let n=e.value,r=t.value;if(!ja(n)&&!Aa(n)||!ja(r)&&!Aa(r))return Q.dr();if(ja(n)||ja(r)){let e=this.br(n,r);return e?Q.newValue(e):Q.dr()}if(Aa(n)&&Aa(r)){let e=this.vr(n,r);return e===void 0?Q.dr():typeof e==`number`?Q.newValue({doubleValue:e}):e<fd||e>dd?Q.dr():Q.newValue({integerValue:`${e}`})}return Q.dr()}};function md(e,t){return W(e)===W(t)?Fa(e)||Fa(t)?`NOT_EQ`:Pa(e)&&Pa(t)?`EQ`:Pa(e)||Pa(t)?`NULL`:Na(e)&&Na(t)?function(e,t){if(e.values?.length!==t.values?.length)return`NOT_EQ`;let n=!1;for(let r=0;r<(e.values?.length??0);r++){let i=e.values[r],a=t.values[r];switch(md(i,a)){case`EQ`:break;case`NOT_EQ`:case`TYPE_MISMATCH`:return`NOT_EQ`;case`NULL`:n=!0;break;default:N(44609,{Sr:i,Dr:a})}}return n?`NULL`:`EQ`}(e.arrayValue,t.arrayValue):La(e)&&La(t)||Ia(e)&&Ia(t)?function(e,t){let n=e.fields||{},r=t.fields||{};if(Ni(n)!==Ni(r))return`NOT_EQ`;let i=!1;for(let e in n)if(n.hasOwnProperty(e)){if(r[e]===void 0)return`NOT_EQ`;switch(md(n[e],r[e])){case`NOT_EQ`:case`TYPE_MISMATCH`:return`NOT_EQ`;case`NULL`:i=!0}}return i?`NULL`:`EQ`}(e.mapValue,t.mapValue):function(e,t){return Sa(e,t,{o:!1,t:!0,i:!0})}(e,t)?`EQ`:`NOT_EQ`:`TYPE_MISMATCH`}var hd=class extends pd{vr(e,t){return ud(e)+ud(t)}br(e,t){return{doubleValue:ld(e)+ld(t)}}},gd=class extends pd{constructor(e){super(e),this.expr=e}vr(e,t){return ud(e)-ud(t)}br(e,t){return{doubleValue:ld(e)-ld(t)}}},_d=class extends pd{constructor(e){super(e),this.expr=e}vr(e,t){return ud(e)*ud(t)}br(e,t){return{doubleValue:ld(e)*ld(t)}}},vd=class extends pd{constructor(e){super(e),this.expr=e}vr(e,t){let n=ud(t);if(n!==BigInt(0))return ud(e)/n}br(e,t){let n=ld(t);return n===0?{doubleValue:da(n)?-1/0:1/0}:{doubleValue:ld(e)/n}}},yd=class extends pd{constructor(e){super(e),this.expr=e}vr(e,t){let n=ud(t);if(n!==BigInt(0))return ud(e)%n}br(e,t){let n=ld(t);if(n!==0)return{doubleValue:ld(e)%n}}},bd=class{constructor(e){this.expr=e}evaluate(e,t){let n=!1,r=!1;for(let i of this.expr.params){let a=$(i).evaluate(e,t);switch(a.type){case`BOOLEAN`:if(!a.value?.booleanValue)return Q.newValue(xa);break;case`NULL`:r=!0;break;default:n=!0}}return n?Q.dr():r?Q.pr():Q.newValue(ba)}},xd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,9634);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`BOOLEAN`:return Q.newValue({booleanValue:!n.value?.booleanValue});case`NULL`:return Q.pr();default:return Q.dr()}}},Sd=class{constructor(e){this.expr=e}evaluate(e,t){let n=!1,r=!1;for(let i of this.expr.params){let a=$(i).evaluate(e,t);switch(a.type){case`BOOLEAN`:if(a.value?.booleanValue)return Q.newValue(ba);break;case`NULL`:r=!0;break;default:n=!0}}return n?Q.dr():r?Q.pr():Q.newValue(xa)}},Cd=class e{constructor(e){this.expr=e}evaluate(t,n){let r=!1,i=!1;for(let a of this.expr.params){let o=$(a).evaluate(t,n);switch(o.type){case`BOOLEAN`:r=e.xor(r,!!o.value?.booleanValue);break;case`NULL`:i=!0;break;default:return Q.dr()}}return i?Q.pr():Q.newValue({booleanValue:r})}static xor(e,t){return(e||t)&&!(e&&t)}},wd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===2,55094);let n=!1,r=$(this.expr.params[0]).evaluate(e,t);switch(r.type){case`NULL`:n=!0;break;case`ERROR`:case`UNSET`:return Q.dr()}let i=$(this.expr.params[1]).evaluate(e,t);switch(i.type){case`ARRAY`:break;case`NULL`:n=!0;break;default:return Q.dr()}if(n)return Q.pr();for(let e of i.value?.arrayValue?.values??[])switch(Pa(r.value)&&Pa(e)?`EQ`:md(r.value,e)){case`EQ`:return Q.newValue(ba);case`NOT_EQ`:case`TYPE_MISMATCH`:break;case`NULL`:n=!0;break;default:N(44608,{value:r.value,candidate:e})}return n?Q.pr():Q.newValue(xa)}},Td=class{constructor(e){this.expr=e}evaluate(e,t){return new xd(new Z(`not`,[new Z(`equal_any`,this.expr.params)])).evaluate(e,t)}},Ed=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,23322);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`INT`:return Q.newValue(xa);case`DOUBLE`:return Q.newValue({booleanValue:isNaN(ld(n.value))});case`NULL`:return Q.pr();default:return Q.dr()}}},Dd=class{constructor(e){this.expr=e}evaluate(e,t){return P(this.expr.params.length===1,50406),new xd(new Z(`not`,[new Z(`is_nan`,this.expr.params)])).evaluate(e,t)}},Od=class{constructor(e){this.expr=e}evaluate(e,t){switch(P(this.expr.params.length===1,23123),$(this.expr.params[0]).evaluate(e,t).type){case`NULL`:return Q.newValue(ba);case`UNSET`:case`ERROR`:return Q.dr();default:return Q.newValue(xa)}}},kd=class{constructor(e){this.expr=e}evaluate(e,t){return P(this.expr.params.length===1,23167),new xd(new Z(`not`,[new Z(`is_null`,this.expr.params)])).evaluate(e,t)}},Ad=class{constructor(e){this.expr=e}evaluate(e,t){return P(this.expr.params.length===1,5228),$(this.expr.params[0]).evaluate(e,t).type===`ERROR`?Q.newValue(ba):Q.newValue(xa)}},jd=class{constructor(e){this.expr=e}evaluate(e,t){switch(P(this.expr.params.length===1,6877),$(this.expr.params[0]).evaluate(e,t).type){case`ERROR`:return Q.dr();case`UNSET`:return Q.newValue(xa);default:return Q.newValue(ba)}}},Md=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===3,11706);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`BOOLEAN`:return n.value?.booleanValue?$(this.expr.params[1]).evaluate(e,t):$(this.expr.params[2]).evaluate(e,t);case`NULL`:return $(this.expr.params[2]).evaluate(e,t);default:return Q.dr()}}},Nd=class{constructor(e){this.expr=e}evaluate(e,t){let n=this.expr.params.map((n=>$(n).evaluate(e,t))),r;for(let e of n)switch(e.type){case`ERROR`:case`UNSET`:case`NULL`:continue;default:r=r===void 0||wa(e.value,r.value)>0?e:r}return r===void 0?Q.pr():r}},Pd=class{constructor(e){this.expr=e}evaluate(e,t){let n=this.expr.params.map((n=>$(n).evaluate(e,t))),r;for(let e of n)switch(e.type){case`ERROR`:case`UNSET`:case`NULL`:continue;default:r=r===void 0||wa(e.value,r.value)<0?e:r}return r===void 0?Q.pr():r}},Fd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===2,31033,`${this.expr.name}() function should have exactly 2 params`);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`ERROR`:case`UNSET`:return Q.dr()}let r=$(this.expr.params[1]).evaluate(e,t);switch(r.type){case`ERROR`:case`UNSET`:return Q.dr()}return this.Cr(n,r)}},Id=class extends Fd{constructor(e){super(e),this.expr=e}Cr(e,t){if(e.yr()&&t.yr())return Q.newValue(ba);if(e.yr()||t.yr()||Fa(e.value)||Fa(t.value)||W(e.value)!==W(t.value))return Q.newValue(xa);switch(md(e.value,t.value)){case`EQ`:return Q.newValue(ba);case`NOT_EQ`:return Q.newValue(xa);
28case`NULL`:return Q.pr();default:N(44615,{left:e,right:t})}}},Ld=class extends Fd{constructor(e){super(e),this.expr=e}Cr(e,t){switch(md(e.value,t.value)){case`EQ`:return Q.newValue(xa);case`NOT_EQ`:case`TYPE_MISMATCH`:return Q.newValue(ba);case`NULL`:return Q.pr();default:N(44614,{left:e,right:t})}}},Rd=class extends Fd{constructor(e){super(e),this.expr=e}Cr(e,t){return W(e.value)!==W(t.value)||Fa(e.value)||Fa(t.value)?Q.newValue(xa):Q.newValue({booleanValue:wa(e.value,t.value)<0})}},zd=class extends Fd{constructor(e){super(e),this.expr=e}Cr(e,t){return W(e.value)!==W(t.value)||Fa(e.value)||Fa(t.value)?Q.newValue(xa):md(e.value,t.value)===`EQ`?Q.newValue(ba):Q.newValue({booleanValue:wa(e.value,t.value)<0})}},Bd=class extends Fd{constructor(e){super(e),this.expr=e}Cr(e,t){return W(e.value)!==W(t.value)||Fa(e.value)||Fa(t.value)?Q.newValue(xa):Q.newValue({booleanValue:wa(e.value,t.value)>0})}},Vd=class extends Fd{constructor(e){super(e),this.expr=e}Cr(e,t){return W(e.value)!==W(t.value)||Fa(e.value)||Fa(t.value)?Q.newValue(xa):md(e.value,t.value)===`EQ`?Q.newValue(ba):Q.newValue({booleanValue:wa(e.value,t.value)>0})}},Hd=class{constructor(e){this.expr=e}evaluate(e,t){throw Error(`Unimplemented`)}},Ud=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,216);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`NULL`:return Q.pr();case`ARRAY`:{let e=n.value.arrayValue?.values??[];return Q.newValue({arrayValue:{values:[...e].reverse()}})}default:return Q.dr()}}},Wd=class{constructor(e){this.expr=e}evaluate(e,t){return P(this.expr.params.length===2,52884),new wd(new Z(`eq_any`,[this.expr.params[1],this.expr.params[0]])).evaluate(e,t)}},Gd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===2,1392);let n=!1,r=$(this.expr.params[0]).evaluate(e,t);switch(r.type){case`ARRAY`:break;case`NULL`:n=!0;break;default:return Q.dr()}let i=$(this.expr.params[1]).evaluate(e,t);switch(i.type){case`ARRAY`:break;case`NULL`:n=!0;break;default:return Q.dr()}if(n)return Q.pr();let a=i.value?.arrayValue?.values??[],o=r.value?.arrayValue?.values??[];for(let e of a){let t=!1;n=!1;for(let r of o){switch(Pa(e)&&Pa(r)?`EQ`:md(e,r)){case`EQ`:t=!0;break;case`NOT_EQ`:case`TYPE_MISMATCH`:break;case`NULL`:n=!0;break;default:N(44613,{value:r,search:e})}if(t)break}if(!t)return Q.newValue(xa)}return Q.newValue(ba)}},Kd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===2,2680);let n=!1,r=$(this.expr.params[0]).evaluate(e,t);switch(r.type){case`ARRAY`:break;case`NULL`:n=!0;break;default:return Q.dr()}let i=$(this.expr.params[1]).evaluate(e,t);switch(i.type){case`ARRAY`:break;case`NULL`:n=!0;break;default:return Q.dr()}if(n)return Q.pr();let a=i.value?.arrayValue?.values??[],o=r.value?.arrayValue?.values??[];for(let e of o)for(let t of a)switch(Pa(e)&&Pa(t)?`EQ`:md(e,t)){case`EQ`:return Q.newValue(ba);case`NOT_EQ`:case`TYPE_MISMATCH`:break;case`NULL`:n=!0;break;default:N(60403,{value:e,search:t})}return n?Q.pr():Q.newValue(xa)}},qd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,38605);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`NULL`:return Q.pr();case`ARRAY`:return Q.newValue({integerValue:`${n.value?.arrayValue?.values?.length??0}`});default:return Q.dr()}}},Jd=class{constructor(e){this.expr=e}evaluate(e,t){throw Error(`Unimplemented`)}},Yd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,1508);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`NULL`:return Q.pr();case`BYTES`:{let e=n.value?.bytesValue;if(typeof e==`string`){let t=Ji.fromBase64String(e).toUint8Array();return t.reverse(),Q.newValue({bytesValue:Ji.fromUint8Array(t).toBase64()})}return Q.newValue({bytesValue:new Uint8Array(e).reverse()})}case`STRING`:{let e=n.value?.stringValue,t=new Intl.__PRIVATE_Segmenter(void 0,{granularity:`grapheme`}).segment(e),r=Array.from(t,(e=>e.segment)).reverse();return Q.newValue({stringValue:r.join(``)})}default:return Q.dr()}}},Xd=class{constructor(e){this.expr=e}evaluate(e,t){throw Error(`Unimplemented`)}},Zd=class{constructor(e){this.expr=e}evaluate(e,t){throw Error(`Unimplemented`)}},Qd=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,19400);let n=$(this.expr.params[0]).evaluate(e,t);
28switch(n.type){case`NULL`:return Q.pr();case`STRING`:{let e=function(e){let t=0;for(let n=0;n<e.length;n++){let r=e.codePointAt(n);if(r===void 0)return;if(r<=65535)if(r>=55296&&r<=57343)if(r<=56319){let r=e.codePointAt(n+1);r!==void 0&&r>=56320&&r<=57343?(t+=1,n++):t+=1}else t+=1;else t+=1;else{if(!(r<=1114111))return;t+=1,n++}}return t}(n.value.stringValue);return e===void 0?Q.dr():Q.newValue({integerValue:e})}default:return Q.dr()}}},$d=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,8486);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`BYTES`:{let e=n.value?.bytesValue;return typeof e==`string`?Q.newValue({integerValue:Ji.fromBase64String(e).toUint8Array().length}):Q.newValue({integerValue:new Uint8Array(e).length})}case`STRING`:{let e=function(e){let t=0;for(let n=0;n<e.length;n++){let r=e.codePointAt(n);if(r===void 0)return;if(r>=55296&&r<=57343){if(!(r<=56319))return;{let r=e.codePointAt(n+1);if(r===void 0||!(r>=56320&&r<=57343))return;t+=4,n++}}else if(r<=127)t+=1;else if(r<=2047)t+=2;else if(r<=65535)t+=3;else{if(!(r<=1114111))return;t+=4,n++}}return t}(n.value?.stringValue);return e===void 0?Q.dr():Q.newValue({integerValue:e})}case`NULL`:return Q.pr();default:return Q.dr()}}},ef=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===2,39773,`${this.expr.name}() function should have exactly two parameters`);let n=!1,r=$(this.expr.params[0]).evaluate(e,t);switch(r.type){case`STRING`:break;case`NULL`:n=!0;break;default:return Q.dr()}let i=$(this.expr.params[1]).evaluate(e,t);switch(i.type){case`STRING`:break;case`NULL`:n=!0;break;default:return Q.dr()}return n?Q.pr():this.Fr(r.value?.stringValue,i.value?.stringValue)}},tf=class extends ef{Fr(e,t){try{let n=function(e){let t=``;for(let n=0;n<e.length;n++){let r=e.charAt(n);switch(r){case`_`:t+=`.`;break;case`%`:t+=`.*`;break;case`\\`:case`.`:case`*`:case`?`:case`+`:case`^`:case`$`:case`|`:case`(`:case`)`:case`[`:case`]`:case`{`:case`}`:t+=`\\`+r;break;default:t+=r}}return`^`+t+`$`}(t),r=ci.compile(n);return Q.newValue({booleanValue:r.matches(e)})}catch(e){return mi(`Invalid LIKE pattern converted to regex: ${t}, returning error. Error: ${e}`),Q.dr()}}},nf=class extends ef{Fr(e,t){try{let n=ci.compile(t);return Q.newValue({booleanValue:n.test(e)})}catch{return mi(`Invalid regex pattern found in regex_contains: ${t}, returning error`),Q.dr()}}},rf=class extends ef{Fr(e,t){try{return Q.newValue({booleanValue:ci.compile(t).matches(e)})}catch{return mi(`Invalid regex pattern found in regex_match: ${t}, returning error`),Q.dr()}}},af=class extends ef{Fr(e,t){return Q.newValue({booleanValue:e.includes(t)})}},of=class extends ef{Fr(e,t){return Q.newValue({booleanValue:e.startsWith(t)})}},sf=class extends ef{Fr(e,t){return Q.newValue({booleanValue:e.endsWith(t)})}},cf=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,29079);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`STRING`:return Q.newValue({stringValue:n.value?.stringValue?.toLowerCase()});case`NULL`:return Q.pr();default:return Q.dr()}}},lf=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,60487);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`STRING`:return Q.newValue({stringValue:n.value?.stringValue?.toUpperCase()});case`NULL`:return Q.pr();default:return Q.dr()}}},uf=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,28544);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`STRING`:return Q.newValue({stringValue:n.value?.stringValue?.trim()});case`NULL`:return Q.pr();default:return Q.dr()}}},df=class{constructor(e){this.expr=e}evaluate(e,t){let n=this.expr.params.map((n=>$(n).evaluate(e,t))),r=``,i=!1;for(let e of n)switch(e.type){case`STRING`:r+=e.value.stringValue;break;case`NULL`:i=!0;break;default:return Q.dr()}return i?Q.pr():Q.newValue({stringValue:r})}},ff=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===2,4483);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`UNSET`:return Q.mr();case`MAP`:break;default:return Q.dr()}let r=$(this.expr.params[1]).evaluate(e,t);if(r.type!==`STRING`)return Q.dr();let i=n.value?.mapValue?.fields?.[r.value?.stringValue];
28return i===void 0?Q.mr():Q.newValue(i)}},pf=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===2,25231,`${this.expr.name}() function should have exactly 2 params`);let n=!1,r=$(this.expr.params[0]).evaluate(e,t);switch(r.type){case`VECTOR`:break;case`NULL`:n=!0;break;default:return Q.dr()}let i=$(this.expr.params[1]).evaluate(e,t);switch(i.type){case`VECTOR`:break;case`NULL`:n=!0;break;default:return Q.dr()}if(n)return Q.pr();let a=Ra(r.value),o=Ra(i.value);if(a===void 0||o===void 0||a.values?.length!==o.values?.length)return Q.dr();let s=this.Or(a,o);return s===void 0||isNaN(s)?Q.dr():Q.newValue({doubleValue:s})}},mf=class extends pf{Or(e,t){let n=e?.values??[],r=t?.values??[];if(n.length===0)return;let i=0,a=0,o=0;for(let e=0;e<n.length;e++){if(!Ma(n[e])||!Ma(r[e]))return;let t=ld(n[e]),s=ld(r[e]);i+=t*s,a+=t*t,o+=s*s}let s=Math.sqrt(a)*Math.sqrt(o);if(s!==0)return 1-Math.max(-1,Math.min(1,i/s))}},hf=class extends pf{Or(e,t){let n=e?.values??[],r=t?.values??[];if(n.length===0)return 0;let i=0;for(let e=0;e<n.length;e++){if(!Ma(n[e])||!Ma(r[e]))return;i+=ld(n[e])*ld(r[e])}return i}},gf=class extends pf{Or(e,t){let n=e?.values??[],r=t?.values??[];if(n.length===0)return 0;let i=0;for(let e=0;e<n.length;e++){if(!Ma(n[e])||!Ma(r[e]))return;let t=ld(n[e]),a=ld(r[e]);i+=(t-a)**2}return Math.sqrt(i)}},_f=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,39044);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`VECTOR`:{let e=Ra(n.value);return Q.newValue({integerValue:e?.values?.length??0})}case`NULL`:return Q.pr();default:return Q.dr()}}},vf=BigInt(-62135596800),yf=BigInt(253402300799),bf=BigInt(1e3),xf=BigInt(1e6),Sf=vf*bf,Cf=yf*bf+BigInt(999),wf=vf*xf,Tf=yf*xf+BigInt(999999);function Ef(e){return e>=wf&&e<=Tf}function Df(e){return e>=vf&&e<=yf}function Of(e,t){let n=BigInt(e);return!(n<vf||n>yf)&&!(t<0||t>=1e9)&&(n!==vf||t===0)&&!(n===yf&&t>999999999)}function kf(e,t){return t<0?{seconds:e-1,nanos:t+1e9}:{seconds:e,nanos:t}}function Af(e){return BigInt(e.seconds)*xf+BigInt(Math.trunc(e.nanoseconds/1e3))}var jf=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,49262,`${this.expr.name}() function should have exactly one parameter`);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`INT`:return this.toTimestamp(BigInt(n.value.integerValue));case`NULL`:return Q.pr();default:return Q.dr()}}},Mf=class extends jf{toTimestamp(e){if(!Ef(e))return Q.dr();let t=Number(e/xf),n=Number(e%xf*BigInt(1e3)),r=kf(t,n);return t=r.seconds,n=r.nanos,Of(t,n)?Q.newValue({timestampValue:{seconds:t,nanos:n}}):Q.dr()}},Nf=class extends jf{toTimestamp(e){if(!function(e){return e>=Sf&&e<=Cf}(e))return Q.dr();let t=Number(e/bf),n=Number(e%bf*BigInt(1e6)),r=kf(t,n);return t=r.seconds,n=r.nanos,Of(t,n)?Q.newValue({timestampValue:{seconds:t,nanos:n}}):Q.dr()}},Pf=class extends jf{toTimestamp(e){if(!Df(e))return Q.dr();let t=Number(e);return Q.newValue({timestampValue:{seconds:t,nanos:0}})}},Ff=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===1,1265,`${this.expr.name}() function should have exactly one parameter`);let n=$(this.expr.params[0]).evaluate(e,t);switch(n.type){case`TIMESTAMP`:break;case`NULL`:return Q.pr();default:return Q.dr()}let r=oc(n.value.timestampValue);return Of(r.seconds,r.nanoseconds)?this.Mr(r):Q.dr()}},If=class extends Ff{Mr(e){let t=Af(e);return Ef(t)?Q.newValue({integerValue:`${t.toString()}`}):Q.dr()}},Lf=class extends Ff{Mr(e){let t=Af(e),n=t/BigInt(1e3),r=t%BigInt(1e3);return n>BigInt(0)||r===BigInt(0)?Q.newValue({integerValue:n.toString()}):Q.newValue({integerValue:(n-BigInt(1)).toString()})}},Rf=class extends Ff{Mr(e){let t=BigInt(e.seconds);return Df(t)?Q.newValue({integerValue:t.toString()}):Q.dr()}},zf=class{constructor(e){this.expr=e}evaluate(e,t){P(this.expr.params.length===3,2775,`${this.expr.name}() function should have exactly 3 parameters`);let n=!1,r=$(this.expr.params[0]).evaluate(e,t);switch(r.type){case`TIMESTAMP`:break;case`NULL`:n=!0;break;default:return Q.dr()}let i=$(this.expr.params[1]).evaluate(e,t),a;switch(i.type){case`STRING`:if(a=function(e){switch(e){case`microsecond`:return`microsecond`;case`millisecond`:return`millisecond`;case`second`:return`second`;case`minute`:return`minute`;case`hour`:return`hour`;case`day`:return`day`;default:return}}(i.value.stringValue),a===void 0)return Q.dr();break;case`NULL`:n=!0;break;default:return Q.dr()}let o=$(this.expr.params[2]).evaluate(e,t);switch(o.type){case`INT`:break;case`NULL`:n=!0;break;default:return Q.dr()}
28if(n)return Q.pr();let s=BigInt(o.value.integerValue),c;try{switch(a){case`microsecond`:c=s;break;case`millisecond`:c=s*BigInt(1e3);break;case`second`:c=s*BigInt(1e6);break;case`minute`:c=s*BigInt(6e7);break;case`hour`:c=s*BigInt(36e8);break;case`day`:c=s*BigInt(864e8);break;default:return Q.dr()}if(a!==`microsecond`&&s!==BigInt(0)&&c/s!==BigInt(this.Nr(a)))return Q.dr()}catch(e){return mi(`Error during timestamp arithmetic: ${e}`),Q.dr()}let l=oc(r.value.timestampValue);if(!Of(l.seconds,l.nanoseconds))return Q.dr();let u=Af(l),d=this.Lr(u,c);if(!Ef(d))return Q.dr();let f=Number(d/xf),p=d%xf,m=Number((p<0?p+xf:p)*BigInt(1e3)),h=p<0?f-1:f;return Of(h,m)?Q.newValue({timestampValue:{seconds:h,nanos:m}}):Q.dr()}Nr(e){switch(e){case`millisecond`:return 1e3;case`second`:return 1e6;case`minute`:return 6e7;case`hour`:return 36e8;case`day`:return 864e8;default:return 1}}},Bf=class extends zf{Lr(e,t){return e+t}},Vf=class extends zf{Lr(e,t){return e-t}},Hf=class{constructor(e,t,n){this.serializer=e,this.stages=t,this.listenOptions=n,this.isCorePipeline=!0}getPipelineCollection(){return Wf(this)}getPipelineCollectionGroup(){return Gf(this)}getPipelineCollectionId(){return Kf(this)}getPipelineDocuments(){return qf(this)}getPipelineFlavor(){return function(e){let t=`exact`;
28return e.stages.forEach(((n,r)=>{n._name!==Ku.name&&n._name!==Gu.name||(t=`keyless`),n._name===ed.name&&t===`exact`&&(t=`augmented`),n._name===Wu.name&&r<e.stages.length-1&&t===`exact`&&(t=`augmented`)})),t}(this)}getPipelineSourceType(){return Uf(this)}};function Uf(e){let t=e.stages[0];return t instanceof qu||t instanceof Ju||t instanceof Yu||t instanceof Xu?t._name:`unknown`}function Wf(e){if(Uf(e)===`collection`)return e.stages[0].Er}function Gf(e){if(Uf(e)===`collection_group`)return e.stages[0].collectionId}function Kf(e){switch(Uf(e)){case`collection`:return B.fromString(Wf(e)).lastSegment();case`collection_group`:return Gf(e);default:return}}function qf(e){if(Uf(e)===`documents`)return e.stages[0].hr}function Jf(e){if((e=ad(e))instanceof Ou)return`fld(${e.fieldName})`;if(e instanceof ju)return`cst(${function(e){return e===null?`null`:typeof e==`number`?e.toString():typeof e==`string`?`"${e}"`:e instanceof Yl?`ref(${e.path})`:e instanceof Ql?`vec(${JSON.stringify(e)})`:JSON.stringify(e)}(e.value)})`;if(e instanceof Z)return`fn(${e.name},[${e.params.map(Jf).join(`,`)}])`;if(e.expressionType===`ListOfExpressions`)return`list([${e.ur.map(Jf).join(`,`)}])`;throw Error(`Unrecognized expr ${JSON.stringify(e,null,2)}`)}function Yf(e){if(e instanceof Wu)return`${e._name}(${Xf(e.fields)})`;if(e instanceof Gu){let t=`${e._name}(${Xf(e.accumulators)})`;return e.groups.size>0&&(t+=`grouping(${Xf(e.groups)})`),t}if(e instanceof Ku)return`${e._name}(${Xf(e.groups)})`;if(e instanceof qu)return`${e._name}(${e.Er})`;if(e instanceof Ju)return`${e._name}(${e.collectionId})`;if(e instanceof Yu)return`${e._name}()`;if(e instanceof Xu)return`${e._name}(${e.hr.sort()})`;if(e instanceof Zu)return`${e._name}(${Jf(e.condition)})`;if(e instanceof Qu)return`${e._name}(${e.limit})`;if(e instanceof td)return`${e._name}(${function(e){return e.map((e=>`${Jf(e.expr)}${e.direction}`)).join(`,`)}(e.orderings)})`;throw Error(`Unrecognized stage ${e._name}`)}function Xf(e){return`${Array.from(e.entries()).sort().map((([e,t])=>`${e}=${Jf(t)}`)).join(`,`)}`}function Zf(e){return e.stages.map((e=>Yf(e))).join(`|`)}function Qf(e,t){return Zf(e)===Zf(t)}function $f(e){return e instanceof Hf}function ep(e){return $f(e)?Zf(e):_s(e)}function tp(e){return $f(e)?Zf(e):function(e){return`${ns(ps(e))}|lt:${e.limitType}`}(e)}function np(e,t){return e instanceof Hf&&t instanceof Hf?Qf(e,t):!(e instanceof Hf&&!(t instanceof Hf)||!(e instanceof Hf)&&t instanceof Hf)&&gs(e,t)}function rp(e){return is(e)?Zf(e):ns(e)}function ip(e,t){return e instanceof Hf&&t instanceof Hf?Qf(e,t):!(e instanceof Hf&&!(t instanceof Hf)||!(e instanceof Hf)&&t instanceof Hf)&&rs(e,t)}var ap=class{constructor(e,t,n,r){this.batchId=e,this.localWriteTime=t,this.baseMutations=n,this.mutations=r}applyToRemoteDocument(e,t){let n=t.mutationResults;for(let t=0;t<this.mutations.length;t++){let r=this.mutations[t];r.key.isEqual(e.key)&&ho(r,e,n[t])}}applyToLocalView(e,t){for(let n of this.baseMutations)n.key.isEqual(e.key)&&(t=go(n,e,t,this.localWriteTime));for(let n of this.mutations)n.key.isEqual(e.key)&&(t=go(n,e,t,this.localWriteTime));return t}applyToLocalDocumentSet(e,t){let n=js();return this.mutations.forEach((r=>{let i=e.get(r.key),a=i.overlayedDocument,o=this.applyToLocalView(a,i.mutatedFields);o=t.has(r.key)?null:o;let s=mo(a,o);s!==null&&n.set(r.key,s),a.isValidDocument()||a.convertToNoDocument(G.min())})),n}keys(){return this.mutations.reduce(((e,t)=>e.add(t.key)),J())}isEqual(e){return this.batchId===e.batchId&&Ci(this.mutations,e.mutations,((e,t)=>vo(e,t)))&&Ci(this.baseMutations,e.baseMutations,((e,t)=>vo(e,t)))}},op=class e{constructor(e,t,n,r){this.batch=e,this.commitVersion=t,this.mutationResults=n,this.docVersions=r}static from(t,n,r){P(t.mutations.length===r.length,58842,{Br:t.mutations.length,Ur:r.length});let i=function(){return Ns}(),a=t.mutations;for(let e=0;e<a.length;e++)i=i.insert(a[e].key,r[e].version);return new e(t,n,r,i)}},sp=`�`;function cp(e){let t=``;for(let n=0;n<e.length;n++)t.length>0&&(t=up(t)),t=lp(e.get(n),t);return up(t)}function lp(e,t){let n=t,r=e.length;for(let t=0;t<r;t++){let r=e.charAt(t);switch(r){case`\0`:n+=`��`;break;case sp:n+=`��`;break;default:n+=r}}return n}function up(e){return e+`��`}var dp=class{constructor(e,t){this.largestBatchId=e,this.mutation=t}getKey(){return this.mutation.key}isEqual(e){return e!==null&&this.mutation===e.mutation}toString(){return`Overlay{\n      largestBatchId: ${this.largestBatchId},\n      mutation: ${this.mutation.toString()}\n    }`}},fp=class e{constructor(e,t,n,r,i=G.min(),a=G.min(),o=Ji.EMPTY_BYTE_STRING,s=null){this.target=e,this.targetId=t,this.purpose=n,this.sequenceNumber=r,this.snapshotVersion=i,this.lastLimboFreeSnapshotVersion=a,this.resumeToken=o,this.expectedCount=s}withSequenceNumber(t){return new e(this.target,this.targetId,this.purpose,t,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,this.expectedCount)}withResumeToken(t,n){return new e(this.target,this.targetId,this.purpose,this.sequenceNumber,n,this.lastLimboFreeSnapshotVersion,t,null)}withExpectedCount(t){return new e(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,this.lastLimboFreeSnapshotVersion,this.resumeToken,t)}withLastLimboFreeSnapshotVersion(t){return new e(this.target,this.targetId,this.purpose,this.sequenceNumber,this.snapshotVersion,t,this.resumeToken,this.expectedCount)}},pp=class{constructor(e){this.qr=e}};function mp(e){let t=Tc({parent:e.parent,structuredQuery:e.structuredQuery});return e.limitType===`LAST`?hs(t,t.limit,`L`):t}var hp=class{constructor(){}Xr(e,t){this.ei(e,t),t.ti()}ei(e,t){if(`nullValue`in e)this.ni(t,5);else if(`booleanValue`in e)this.ni(t,10),t.ri(+!!e.booleanValue);else if(`integerValue`in e)this.ni(t,15),t.ri(U(e.integerValue));else if(`doubleValue`in e){let n=U(e.doubleValue);isNaN(n)?this.ni(t,13):(this.ni(t,15),da(n)?t.ri(0):t.ri(n))}else if(`timestampValue`in e){let n=e.timestampValue;this.ni(t,20),typeof n==`string`&&(n=Xi(n)),t.ii(`${n.seconds||``}`),t.ri(n.nanos||0)}else if(`stringValue`in e)this.si(e.stringValue,t),this._i(t);else if(`bytesValue`in e)this.ni(t,30),t.oi(Zi(e.bytesValue)),this._i(t);else if(`referenceValue`in e)this.ai(e.referenceValue,t);else if(`geoPointValue`in e){let n=e.geoPointValue;this.ni(t,45),t.ri(n.latitude||0),t.ri(n.longitude||0)}else`mapValue`in e?Ba(e)?this.ni(t,2**53-1):La(e)?this.ui(e.mapValue,t):(this.ci(e.mapValue,t),this._i(t)):`arrayValue`in e?(this.li(e.arrayValue,t),this._i(t)):N(19022,{Ei:e})}si(e,t){this.ni(t,25),this.hi(e,t)}hi(e,t){t.ii(e)}ci(e,t){let n=e.fields||{};this.ni(t,55);for(let e of Object.keys(n))this.si(e,t),this.ei(n[e],t)}ui(e,t){let n=e.fields||{};this.ni(t,53);let r=va,i=n[r].arrayValue?.values?.length||0;this.ni(t,15),t.ri(U(i)),this.si(r,t),this.ei(n[r],t)}li(e,t){let n=e.values||[];this.ni(t,50);for(let e of n)this.ei(e,t)}ai(e,t){this.ni(t,37),V.fromName(e).path.forEach((e=>{this.ni(t,60),this.hi(e,t)}))}ni(e,t){e.ri(t)}_i(e){e.ri(2)}};hp.Ti=new hp;var gp=class{constructor(){this.Yi=new _p}addToCollectionParentIndex(e,t){return this.Yi.add(t),Y.resolve()}getCollectionParents(e,t){return Y.resolve(this.Yi.getEntries(t))}addFieldIndex(e,t){return Y.resolve()}deleteFieldIndex(e,t){return Y.resolve()}deleteAllFieldIndexes(e){return Y.resolve()}createTargetIndexes(e,t){return Y.resolve()}getDocumentsMatchingTarget(e,t){return Y.resolve(null)}getIndexType(e,t){return Y.resolve(0)}getFieldIndexes(e,t){return Y.resolve([])}getNextCollectionGroupToUpdate(e){return Y.resolve(null)}getMinOffset(e,t){return Y.resolve(Qo.min())}getMinOffsetFromCollectionGroup(e,t){return Y.resolve(Qo.min())}updateCollectionGroup(e,t,n){return Y.resolve()}updateIndexEntries(e,t){return Y.resolve()}},_p=class{constructor(){this.index={}}add(e){let t=e.lastSegment(),n=e.popLast(),r=this.index[t]||new Ei(B.comparator),i=!r.has(n);return this.index[t]=r.add(n),i}has(e){let t=e.lastSegment(),n=e.popLast(),r=this.index[t];return r&&r.has(n)}getEntries(e){return(this.index[e]||new Ei(B.comparator)).toArray()}},vp=class e{constructor(e){this.gs=e}next(){return this.gs+=2,this.gs}static ys(){return new e(0)}static ws(){return new e(-1)}};function yp(e,t){let n=t;for(let t of e.stages)n=Sp({serializer:e.serializer,serverTimestampBehavior:e.listenOptions?.serverTimestampBehavior},t,n);return n}function bp(e,t){return yp(e,[t]).length>0}function xp(e,t){return $f(e)?bp(e,t):vs(e,t)}
28function Sp(e,t,n){if(t instanceof qu)return function(e,t,n){return n.filter((e=>e.isFoundDocument()&&`/${e.key.getCollectionPath().canonicalString()}`===t.Er))}(0,t,n);if(t instanceof Zu)return function(e,t,n){return n.filter((n=>{let r=id($(t.condition).evaluate(e,n));return r!==void 0&&Sa(r,ba)}))}(e,t,n);if(t instanceof Ju)return function(e,t,n){return n.filter((e=>e.isFoundDocument()&&e.key.getCollectionPath().lastSegment()===t.collectionId))}(0,t,n);if(t instanceof Yu)return function(e,t,n){return n.filter((e=>e.isFoundDocument()))}(0,0,n);if(t instanceof Xu)return function(e,t,n){return n.filter((e=>e.isFoundDocument()&&t.Tr.has(e.key.path.toStringWithLeadingSlash())))}(0,t,n);if(t instanceof Qu)return function(e,t,n){return n.slice(0,t.limit)}(0,t,n);if(t instanceof td)return function(e,t,n){let r=t.orderings.map((e=>({Os:$(e.expr),direction:e.direction})));return[...n].sort(((t,n)=>{for(let{Os:i,direction:a}of r){let r=id(i.evaluate(e,t)),o=id(i.evaluate(e,n)),s=wa(r??ya,o??ya);if(s!==0)return a===`ascending`?s:-s}return 0}))}(e,t,n);throw Error(`Unknown stage: ${t._name}`)}function Cp(e){let t=function(e){for(let t=e.stages.length-1;t>=0;t--){let n=e.stages[t];if(n instanceof td)return n.orderings}throw Error(`Pipeline must contain at least one Sort stage`)}(e);return(n,r)=>{for(let i of t){let t=id($(i.expr).evaluate({serializer:e.serializer},n)),a=id($(i.expr).evaluate({serializer:e.serializer},r)),o=wa(t||ya,a||ya);if(o!==0)return i.direction===`ascending`?o:-o}return 0}}function wp(e){for(let t=e.stages.length-1;t>=0;t--){let n=e.stages[t];if(n instanceof Qu)return{limit:n.limit}}}var Tp=class{constructor(){this.changes=new ws((e=>e.toString()),((e,t)=>e.isEqual(t))),this.changesApplied=!1}addEntry(e){this.assertNotApplied(),this.changes.set(e.key,e)}removeEntry(e,t){this.assertNotApplied(),this.changes.set(e,Jo.newInvalidDocument(e).setReadTime(t))}getEntry(e,t){this.assertNotApplied();let n=this.changes.get(t);return n===void 0?this.getFromCache(e,t):Y.resolve(n)}getEntries(e,t){return this.getAllFromCache(e,t)}apply(e){return this.assertNotApplied(),this.changesApplied=!0,this.applyChanges(e)}assertNotApplied(){}},Ep=class{constructor(e,t){this.overlayedDocument=e,this.mutatedFields=t}},Dp=class{constructor(e,t,n,r){this.remoteDocumentCache=e,this.mutationQueue=t,this.documentOverlayCache=n,this.indexManager=r}getDocument(e,t){let n=null;return this.documentOverlayCache.getOverlay(e,t).next((r=>(n=r,this.remoteDocumentCache.getEntry(e,t)))).next((e=>(n!==null&&go(n.mutation,e,Mi.empty(),Ki.now()),e)))}getDocuments(e,t){return this.remoteDocumentCache.getEntries(e,t).next((t=>this.getLocalViewOfDocuments(e,t,J()).next((()=>t))))}getLocalViewOfDocuments(e,t,n=J()){let r=As();return this.populateOverlays(e,r,t).next((()=>this.computeViews(e,t,r,n).next((e=>{let t=Os();return e.forEach(((e,n)=>{t=t.insert(e,n.overlayedDocument)})),t}))))}
28getOverlayedDocuments(e,t){let n=As();return this.populateOverlays(e,n,t).next((()=>this.computeViews(e,t,n,J())))}populateOverlays(e,t,n){let r=[];return n.forEach((e=>{t.has(e)||r.push(e)})),this.documentOverlayCache.getOverlays(e,r).next((e=>{e.forEach(((e,n)=>{t.set(e,n)}))}))}computeViews(e,t,n,r){let i=Es(),a=Ms(),o=function(){return Ms()}();return t.forEach(((e,t)=>{let o=n.get(t.key);r.has(t.key)&&(o===void 0||o.mutation instanceof bo)?i=i.insert(t.key,t):o===void 0?a.set(t.key,Mi.empty()):(a.set(t.key,o.mutation.getFieldMask()),go(o.mutation,t,o.mutation.getFieldMask(),Ki.now()))})),this.recalculateAndSaveOverlays(e,i).next((e=>(e.forEach(((e,t)=>a.set(e,t))),t.forEach(((e,t)=>o.set(e,new Ep(t,a.get(e)??null)))),o)))}recalculateAndSaveOverlays(e,t){let n=Ms(),r=new L(((e,t)=>e-t)),i=J();return this.mutationQueue.getAllMutationBatchesAffectingDocumentKeys(e,t).next((e=>{for(let i of e)i.keys().forEach((e=>{let a=t.get(e);if(a===null)return;let o=n.get(e)||Mi.empty();o=i.applyToLocalView(a,o),n.set(e,o);let s=(r.get(i.batchId)||J()).add(e);r=r.insert(i.batchId,s)}))})).next((()=>{let a=[],o=r.getReverseIterator();for(;o.hasNext();){let r=o.getNext(),s=r.key,c=r.value,l=js();c.forEach((e=>{if(!i.has(e)){let r=mo(t.get(e),n.get(e));r!==null&&l.set(e,r),i=i.add(e)}})),a.push(this.documentOverlayCache.saveOverlays(e,s,l))}return Y.waitFor(a)})).next((()=>n))}recalculateAndSaveOverlaysForDocumentKeys(e,t){return this.remoteDocumentCache.getEntries(e,t).next((t=>this.recalculateAndSaveOverlays(e,t)))}getDocumentsMatchingQuery(e,t,n,r){return $f(t)?this.getDocumentsMatchingPipeline(e,t,n,r):us(t)?this.getDocumentsMatchingDocumentQuery(e,t.path):ds(t)?this.getDocumentsMatchingCollectionGroupQuery(e,t,n,r):this.getDocumentsMatchingCollectionQuery(e,t,n,r)}getNextDocuments(e,t,n,r){return this.remoteDocumentCache.getAllFromCollectionGroup(e,t,n,r).next((i=>{let a=r-i.size>0?this.documentOverlayCache.getOverlaysForCollectionGroup(e,t,n.largestBatchId,r-i.size):Y.resolve(As()),o=Yo,s=i;return a.next((t=>Y.forEach(t,((t,n)=>(o<n.largestBatchId&&(o=n.largestBatchId),i.get(t)?Y.resolve():this.remoteDocumentCache.getEntry(e,t).next((e=>{s=s.insert(t,e)}))))).next((()=>this.populateOverlays(e,t,i))).next((()=>this.computeViews(e,s,t,J()))).next((e=>({batchId:o,changes:ks(e)})))))}))}getDocumentsMatchingDocumentQuery(e,t){return this.getDocument(e,new V(t)).next((e=>{let t=Os();return e.isFoundDocument()&&(t=t.insert(e.key,e)),t}))}getDocumentsMatchingCollectionGroupQuery(e,t,n,r){let i=t.collectionGroup,a=Os();return this.indexManager.getCollectionParents(e,i).next((o=>Y.forEach(o,(o=>{let s=function(e,t){return new os(t,null,e.explicitOrderBy.slice(),e.filters.slice(),e.limit,e.limitType,e.startAt,e.endAt)}(t,o.child(i));return this.getDocumentsMatchingCollectionQuery(e,s,n,r).next((e=>{e.forEach(((e,t)=>{a=a.insert(e,t)}))}))})).next((()=>a))))}getDocumentsMatchingCollectionQuery(e,t,n,r){let i;return this.documentOverlayCache.getOverlaysForCollection(e,t.path,n.largestBatchId).next((a=>(i=a,this.remoteDocumentCache.getDocumentsMatchingQuery(e,t,n,i,r)))).next((e=>this.retrieveMatchingLocalDocuments(i,e,(e=>vs(t,e)))))}getDocumentsMatchingPipeline(e,t,n,r){if(Uf(t)===`collection_group`){let i=Gf(t),a=Os();return this.indexManager.getCollectionParents(e,i).next((o=>Y.forEach(o,(o=>{let s=function(e,t){let n=e.stages.map((e=>e instanceof Ju?new qu(t.canonicalString(),{}):e));return new Hf(e.serializer,n)}(t,o.child(i));return this.getDocumentsMatchingPipeline(e,s,n,r).next((e=>{e.forEach(((e,t)=>{a=a.insert(e,t)}))}))})).next((()=>a))))}{let i;return this.getOverlaysForPipeline(e,t,n.largestBatchId).next((a=>{switch(i=a,Uf(t)){case`collection`:return this.remoteDocumentCache.getDocumentsMatchingQuery(e,t,n,i,r);case`documents`:let a=J();for(let e of qf(t))a=a.add(V.fromPath(e));return this.remoteDocumentCache.getEntries(e,a);case`database`:return this.remoteDocumentCache.getAllEntries(e);default:throw new z(`invalid-argument`,`Invalid pipeline source to execute offline: ${Zf(t)}`)}})).next((e=>this.retrieveMatchingLocalDocuments(i,e,(e=>bp(t,e)))))}}
28retrieveMatchingLocalDocuments(e,t,n){e.forEach(((e,n)=>{let r=n.getKey();t.get(r)===null&&(t=t.insert(r,Jo.newInvalidDocument(r)))}));let r=Os();return t.forEach(((t,i)=>{let a=e.get(t);a!==void 0&&go(a.mutation,i,Mi.empty(),Ki.now()),n(i)&&(r=r.insert(t,i))})),r}getOverlaysForPipeline(e,t,n){switch(Uf(t)){case`collection`:return this.documentOverlayCache.getOverlaysForCollection(e,B.fromString(Wf(t)),n);case`collection_group`:throw new z(`invalid-argument`,`Unexpected collection group pipeline: ${Zf(t)}`);case`documents`:return this.documentOverlayCache.getOverlays(e,qf(t).map((e=>V.fromPath(e))));case`database`:return this.documentOverlayCache.getAllOverlays(e,n);default:throw new z(`invalid-argument`,`Failed to get overlays for pipeline: ${Zf(t)}`)}}},Op=class{constructor(e){this.serializer=e,this.Ks=new Map,this.Ws=new Map}getBundleMetadata(e,t){return Y.resolve(this.Ks.get(t))}saveBundleMetadata(e,t){return this.Ks.set(t.id,function(e){return{id:e.id,version:e.version,createTime:lc(e.createTime)}}(t)),Y.resolve()}getNamedQuery(e,t){return Y.resolve(this.Ws.get(t))}saveNamedQuery(e,t){return this.Ws.set(t.name,function(e){return{name:e.name,query:mp(e.bundledQuery),readTime:lc(e.readTime)}}(t)),Y.resolve()}},kp=class{constructor(){this.overlays=new L(V.comparator),this.Qs=new Map}getOverlay(e,t){return Y.resolve(this.overlays.get(t))}
28getOverlays(e,t){let n=As();return Y.forEach(t,(t=>this.getOverlay(e,t).next((e=>{e!==null&&n.set(t,e)})))).next((()=>n))}getAllOverlays(e,t){let n=As();return this.overlays.forEach(((e,r)=>{r.largestBatchId>t&&n.set(e,r)})),Y.resolve(n)}saveOverlays(e,t,n){return n.forEach(((n,r)=>{this.Yr(e,t,r)})),Y.resolve()}removeOverlaysForBatchId(e,t,n){let r=this.Qs.get(n);return r!==void 0&&(r.forEach((e=>this.overlays=this.overlays.remove(e))),this.Qs.delete(n)),Y.resolve()}getOverlaysForCollection(e,t,n){let r=As(),i=t.length+1,a=new V(t.child(``)),o=this.overlays.getIteratorFrom(a);for(;o.hasNext();){let e=o.getNext().value,a=e.getKey();if(!t.isPrefixOf(a.path))break;a.path.length===i&&e.largestBatchId>n&&r.set(e.getKey(),e)}return Y.resolve(r)}getOverlaysForCollectionGroup(e,t,n,r){let i=new L(((e,t)=>e-t)),a=this.overlays.getIterator();for(;a.hasNext();){let e=a.getNext().value;if(e.getKey().getCollectionGroup()===t&&e.largestBatchId>n){let t=i.get(e.largestBatchId);t===null&&(t=As(),i=i.insert(e.largestBatchId,t)),t.set(e.getKey(),e)}}let o=As(),s=i.getIterator();for(;s.hasNext()&&(s.getNext().value.forEach(((e,t)=>o.set(e,t))),!(o.size()>=r)););return Y.resolve(o)}Yr(e,t,n){let r=this.overlays.get(n.key);if(r!==null){let e=this.Qs.get(r.largestBatchId).delete(n.key);this.Qs.set(r.largestBatchId,e)}this.overlays=this.overlays.insert(n.key,new dp(t,n));let i=this.Qs.get(t);i===void 0&&(i=J(),this.Qs.set(t,i)),this.Qs.set(t,i.add(n.key))}},Ap=class{constructor(){this.sessionToken=Ji.EMPTY_BYTE_STRING}getSessionToken(e){return Y.resolve(this.sessionToken)}setSessionToken(e,t){return this.sessionToken=t,Y.resolve()}},jp=class{constructor(){this.Gs=new Ei(Mp.zs),this.js=new Ei(Mp.Hs)}isEmpty(){return this.Gs.isEmpty()}addReference(e,t){let n=new Mp(e,t);this.Gs=this.Gs.add(n),this.js=this.js.add(n)}Js(e,t){e.forEach((e=>this.addReference(e,t)))}removeReference(e,t){this.Ys(new Mp(e,t))}Zs(e,t){e.forEach((e=>this.removeReference(e,t)))}Xs(e){let t=new V(new B([])),n=new Mp(t,e),r=new Mp(t,e+1),i=[];return this.js.forEachInRange([n,r],(e=>{this.Ys(e),i.push(e.key)})),i}e_(){this.Gs.forEach((e=>this.Ys(e)))}Ys(e){this.Gs=this.Gs.delete(e),this.js=this.js.delete(e)}t_(e){let t=new V(new B([])),n=new Mp(t,e),r=new Mp(t,e+1),i=J();return this.js.forEachInRange([n,r],(e=>{i=i.add(e.key)})),i}containsKey(e){let t=new Mp(e,0),n=this.Gs.firstAfterOrEqual(t);return n!==null&&e.isEqual(n.key)}},Mp=class{constructor(e,t){this.key=e,this.n_=t}static zs(e,t){return V.comparator(e.key,t.key)||I(e.n_,t.n_)}static Hs(e,t){return I(e.n_,t.n_)||V.comparator(e.key,t.key)}},Np=class{constructor(e,t){this.indexManager=e,this.referenceDelegate=t,this.mutationQueue=[],this.Qr=1,this.r_=new Ei(Mp.zs)}checkEmpty(e){return Y.resolve(this.mutationQueue.length===0)}addMutationBatch(e,t,n,r){let i=this.Qr;this.Qr++,this.mutationQueue.length>0&&this.mutationQueue[this.mutationQueue.length-1];let a=new ap(i,t,n,r);this.mutationQueue.push(a);for(let t of r)this.r_=this.r_.add(new Mp(t.key,i)),this.indexManager.addToCollectionParentIndex(e,t.key.path.popLast());return Y.resolve(a)}lookupMutationBatch(e,t){return Y.resolve(this.i_(t))}getNextMutationBatchAfterBatchId(e,t){let n=t+1,r=this.s_(n),i=r<0?0:r;return Y.resolve(this.mutationQueue.length>i?this.mutationQueue[i]:null)}getHighestUnacknowledgedBatchId(){return Y.resolve(this.mutationQueue.length===0?la:this.Qr-1)}getAllMutationBatches(e){return Y.resolve(this.mutationQueue.slice())}getAllMutationBatchesAffectingDocumentKey(e,t){let n=new Mp(t,0),r=new Mp(t,1/0),i=[];return this.r_.forEachInRange([n,r],(e=>{let t=this.i_(e.n_);i.push(t)})),Y.resolve(i)}getAllMutationBatchesAffectingDocumentKeys(e,t){let n=new Ei(I);return t.forEach((e=>{let t=new Mp(e,0),r=new Mp(e,1/0);this.r_.forEachInRange([t,r],(e=>{n=n.add(e.n_)}))})),Y.resolve(this.__(n))}getAllMutationBatchesAffectingQuery(e,t){let n=t.path,r=n.length+1,i=n;V.isDocumentKey(i)||(i=i.child(``));let a=new Mp(new V(i),0),o=new Ei(I);return this.r_.forEachWhile((e=>{let t=e.key.path;return!!n.isPrefixOf(t)&&(t.length===r&&(o=o.add(e.n_)),!0)}),a),Y.resolve(this.__(o))}__(e){let t=[];return e.forEach((e=>{let n=this.i_(e);n!==null&&t.push(n)})),t}removeMutationBatch(e,t){P(this.o_(t.batchId,`removed`)===0,55003),this.mutation
28Queue.shift();let n=this.r_;return Y.forEach(t.mutations,(r=>{let i=new Mp(r.key,t.batchId);return n=n.delete(i),this.referenceDelegate.markPotentiallyOrphaned(e,r.key)})).next((()=>{this.r_=n}))}jr(e){}containsKey(e,t){let n=new Mp(t,0),r=this.r_.firstAfterOrEqual(n);return Y.resolve(t.isEqual(r&&r.key))}performConsistencyCheck(e){return this.mutationQueue.length,Y.resolve()}o_(e,t){return this.s_(e)}s_(e){return this.mutationQueue.length===0?0:e-this.mutationQueue[0].batchId}i_(e){let t=this.s_(e);return t<0||t>=this.mutationQueue.length?null:this.mutationQueue[t]}},Pp=class{constructor(e){this.a_=e,this.docs=function(){return new L(V.comparator)}(),this.size=0}setIndexManager(e){this.indexManager=e}addEntry(e,t){let n=t.key,r=this.docs.get(n),i=r?r.size:0,a=this.a_(t);return this.docs=this.docs.insert(n,{document:t.mutableCopy(),size:a}),this.size+=a-i,this.indexManager.addToCollectionParentIndex(e,n.path.popLast())}removeEntry(e){let t=this.docs.get(e);t&&(this.docs=this.docs.remove(e),this.size-=t.size)}getEntry(e,t){let n=this.docs.get(t);return Y.resolve(n?n.document.mutableCopy():Jo.newInvalidDocument(t))}getEntries(e,t){let n=Es();return t.forEach((e=>{let t=this.docs.get(e);n=n.insert(e,t?t.document.mutableCopy():Jo.newInvalidDocument(e))})),Y.resolve(n)}getAllEntries(e){let t=Es();return this.docs.forEach(((e,n)=>{t=t.insert(e,n.document)})),Y.resolve(t)}getDocumentsMatchingQuery(e,t,n,r){let i,a;$f(t)?(i=B.fromString(Wf(t)),a=e=>bp(t,e)):(i=t.path,a=e=>vs(t,e));let o=Es(),s=new V(i.child(`__id-9223372036854775808__`)),c=this.docs.getIteratorFrom(s);for(;c.hasNext();){let{key:e,value:{document:t}}=c.getNext();if(!i.isPrefixOf(e.path))break;e.path.length>i.length+1||$o(Zo(t),n)<=0||(r.has(t.key)||a(t))&&(o=o.insert(t.key,t.mutableCopy()))}return Y.resolve(o)}getAllFromCollectionGroup(e,t,n,r){N(9500)}u_(e,t){return Y.forEach(this.docs,(e=>t(e)))}newChangeBuffer(e){return new Fp(this)}getSize(e){return Y.resolve(this.size)}},Fp=class extends Tp{constructor(e){super(),this.qs=e}applyChanges(e){let t=[];
28return this.changes.forEach(((n,r)=>{r.isValidDocument()?t.push(this.qs.addEntry(e,r)):this.qs.removeEntry(n)})),Y.waitFor(t)}getFromCache(e,t){return this.qs.getEntry(e,t)}getAllFromCache(e,t){return this.qs.getEntries(e,t)}},Ip=class{constructor(e){this.persistence=e,this.c_=new ws((e=>rp(e)),ip),this.lastRemoteSnapshotVersion=G.min(),this.highestTargetId=0,this.l_=0,this.E_=new jp,this.targetCount=0,this.h_=vp.ys()}forEachTarget(e,t){return this.c_.forEach(((e,n)=>t(n))),Y.resolve()}getLastRemoteSnapshotVersion(e){return Y.resolve(this.lastRemoteSnapshotVersion)}getHighestSequenceNumber(e){return Y.resolve(this.l_)}allocateTargetId(e){return this.highestTargetId=this.h_.next(),Y.resolve(this.highestTargetId)}setTargetsMetadata(e,t,n){return n&&(this.lastRemoteSnapshotVersion=n),t>this.l_&&(this.l_=t),Y.resolve()}Ss(e){this.c_.set(e.target,e);let t=e.targetId;t>this.highestTargetId&&(this.h_=new vp(t),this.highestTargetId=t),e.sequenceNumber>this.l_&&(this.l_=e.sequenceNumber)}addTargetData(e,t){return this.Ss(t),this.targetCount+=1,Y.resolve()}updateTargetData(e,t){return this.Ss(t),Y.resolve()}removeTargetData(e,t){return this.c_.delete(t.target),this.E_.Xs(t.targetId),--this.targetCount,Y.resolve()}removeTargets(e,t,n){let r=0,i=[];return this.c_.forEach(((a,o)=>{o.sequenceNumber<=t&&n.get(o.targetId)===null&&(this.c_.delete(a),i.push(this.removeMatchingKeysForTargetId(e,o.targetId)),r++)})),Y.waitFor(i).next((()=>r))}getTargetCount(e){return Y.resolve(this.targetCount)}getTargetData(e,t){let n=this.c_.get(t)||null;return Y.resolve(n)}addMatchingKeys(e,t,n){return this.E_.Js(t,n),Y.resolve()}removeMatchingKeys(e,t,n){this.E_.Zs(t,n);let r=this.persistence.referenceDelegate,i=[];return r&&t.forEach((t=>{i.push(r.markPotentiallyOrphaned(e,t))})),Y.waitFor(i)}removeMatchingKeysForTargetId(e,t){return this.E_.Xs(t),Y.resolve()}getMatchingKeysForTargetId(e,t){let n=this.E_.t_(t);return Y.resolve(n)}containsKey(e,t){return Y.resolve(this.E_.containsKey(t))}},Lp=class{constructor(e,t){this.T_={},this.overlays={},this.P_=new Al(0),this.R_=!1,this.R_=!0,this.I_=new Ap,this.referenceDelegate=e(this),this.A_=new Ip(this),this.indexManager=new gp,this.remoteDocumentCache=function(e){return new Pp(e)}((e=>this.referenceDelegate.V_(e))),this.serializer=new pp(t),this.d_=new Op(this.serializer)}start(){return Promise.resolve()}shutdown(){return this.R_=!1,Promise.resolve()}get started(){return this.R_}setDatabaseDeletedListener(){}setNetworkEnabled(){}getIndexManager(e){return this.indexManager}getDocumentOverlayCache(e){let t=this.overlays[e.toKey()];return t||(t=new kp,this.overlays[e.toKey()]=t),t}getMutationQueue(e,t){let n=this.T_[e.toKey()];return n||(n=new Np(t,this.referenceDelegate),this.T_[e.toKey()]=n),n}getGlobalsCache(){return this.I_}getTargetCache(){return this.A_}getRemoteDocumentCache(){return this.remoteDocumentCache}getBundleCache(){return this.d_}runTransaction(e,t,n){M(`MemoryPersistence`,`Starting transaction:`,e);let r=new Rp(this.P_.next());return this.referenceDelegate.f_(),n(r).next((e=>this.referenceDelegate.m_(r).next((()=>e)))).toPromise().then((e=>(r.raiseOnCommittedEvent(),e)))}p_(e,t){return Y.or(Object.values(this.T_).map((n=>()=>n.containsKey(e,t))))}},Rp=class extends Ml{constructor(e){super(),this.currentSequenceNumber=e}},zp=class e{constructor(e){this.persistence=e,this.g_=new jp,this.y_=null}static w_(t){return new e(t)}get b_(){if(this.y_)return this.y_;throw N(60996)}addReference(e,t,n){return this.g_.addReference(n,t),this.b_.delete(n.toString()),Y.resolve()}removeReference(e,t,n){return this.g_.removeReference(n,t),this.b_.add(n.toString()),Y.resolve()}markPotentiallyOrphaned(e,t){return this.b_.add(t.toString()),Y.resolve()}removeTarget(e,t){this.g_.Xs(t.targetId).forEach((e=>this.b_.add(e.toString())));let n=this.persistence.getTargetCache();return n.getMatchingKeysForTargetId(e,t.targetId).next((e=>{e.forEach((e=>this.b_.add(e.toString())))})).next((()=>n.removeTargetData(e,t)))}f_(){this.y_=new Set}m_(e){let t=this.persistence.getRemoteDocumentCache().newChangeBuffer();return Y.forEach(this.b_,(n=>{let r=V.fromPath(n);return this.v_(e,r).next((e=>{e||t.removeEntry(r,G.min())}))})).next((()=>(this.y_=null,t.apply(e))))}updateLimboDocument(e,t){return this.v_(e,t).next((e=>{e?this.b_.delete(t.toString()):this.b_.add(t.toString())}))}V_(e){return 0}v_(e,t){return Y.or([()=>Y.resolve(this.g_.containsKey(t)),()=>this.persistence.getTargetCache().containsKey(e,t),()=>this.persistence.p_(e,t)])}},Bp=class e{constructor(e,t){this.persistence=e,this.S_=new ws((e=>cp(e.path)),((e,t)=>e.isEqual(t))),this.garbageCollector=Hl(this,t)}static w_(t,n){return new e(t,n)}f_(){}m_(e){return Y.resolve()}forEachTarget(e,t){return this.persistence.getTargetCache().forEac
28hTarget(e,t)}rr(e){let t=this.xs(e);return this.persistence.getTargetCache().getTargetCount(e).next((e=>t.next((t=>e+t))))}xs(e){let t=0;return this.ir(e,(e=>{t++})).next((()=>t))}ir(e,t){return Y.forEach(this.S_,((n,r)=>this.Fs(e,n,r).next((e=>e?Y.resolve():t(r)))))}removeTargets(e,t,n){return this.persistence.getTargetCache().removeTargets(e,t,n)}removeOrphanedDocuments(e,t){let n=0,r=this.persistence.getRemoteDocumentCache(),i=r.newChangeBuffer();return r.u_(e,(r=>this.Fs(e,r,t).next((e=>{e||(n++,i.removeEntry(r,G.min()))})))).next((()=>i.apply(e))).next((()=>n))}markPotentiallyOrphaned(e,t){return this.S_.set(t,e.currentSequenceNumber),Y.resolve()}removeTarget(e,t){let n=t.withSequenceNumber(e.currentSequenceNumber);return this.persistence.getTargetCache().updateTargetData(e,n)}addReference(e,t,n){return this.S_.set(n,e.currentSequenceNumber),Y.resolve()}removeReference(e,t,n){return this.S_.set(n,e.currentSequenceNumber),Y.resolve()}updateLimboDocument(e,t){return this.S_.set(t,e.currentSequenceNumber),Y.resolve()}V_(e){let t=e.key.toString().length;return e.isFoundDocument()&&(t+=ka(e.data.value)),t}Fs(e,t,n){return Y.or([()=>this.persistence.p_(e,t),()=>this.persistence.getTargetCache().containsKey(e,t),()=>{let e=this.S_.get(t);return Y.resolve(e!==void 0&&e>n)}])}getCacheSize(e){return this.persistence.getRemoteDocumentCache().getSize(e)}},Vp=class e{constructor(e,t,n,r){this.targetId=e,this.fromCache=t,this.Ao=n,this.Vo=r}static fo(t,n){let r=J(),i=J();for(let e of n.docChanges)switch(e.type){case 0:r=r.add(e.doc.key);break;case 1:i=i.add(e.doc.key)}return new e(t,n.fromCache,r,i)}};function Hp(e,t){return V.comparator(e.key,t.key)}var Up=class{constructor(){this._documentReadCount=0}get documentReadCount(){return this._documentReadCount}incrementDocumentReadCount(e){this._documentReadCount+=e}},Wp=class{constructor(){this.mo=!1,this.po=!1,this.yo=100,this.wo=function(){return le()?8:Pl(ne())>0?6:4}()}initialize(e,t){this.bo=e,this.indexManager=t,this.mo=!0}getDocumentsMatchingQuery(e,t,n,r){let i={result:null};return this.vo(e,t).next((e=>{i.result=e})).next((()=>{if(!i.result)return this.So(e,t,r,n).next((e=>{i.result=e}))})).next((()=>{if(i.result)return;let n=new Up;
28return this.Do(e,t,n).next((r=>{if(i.result=r,this.po)return this.xo(e,t,n,r.size)}))})).next((()=>i.result))}xo(e,t,n,r){return $f(t)?Y.resolve():n.documentReadCount<this.yo?(fi()<=_.DEBUG&&M(`QueryEngine`,`SDK will not create cache indexes for query:`,_s(t),`since it only creates cache indexes for collection contains`,`more than or equal to`,this.yo,`documents`),Y.resolve()):(fi()<=_.DEBUG&&M(`QueryEngine`,`Query:`,_s(t),`scans`,n.documentReadCount,`local documents and returns`,r,`documents as results.`),n.documentReadCount>this.wo*r?(fi()<=_.DEBUG&&M(`QueryEngine`,`The SDK decides to create cache indexes for query:`,_s(t),`as using cache indexes may help improve performance.`),this.indexManager.createTargetIndexes(e,ps(t))):Y.resolve())}vo(e,t){if($f(t))return Y.resolve(null);let n=t;if(ls(n))return Y.resolve(null);let r=ps(n);return this.indexManager.getIndexType(e,r).next((t=>t===0?null:(n.limit!==null&&t===1&&(n=hs(n,null,`F`),r=ps(n)),this.indexManager.getDocumentsMatchingTarget(e,r).next((t=>{let i=J(...t);return this.bo.getDocuments(e,i).next((t=>this.indexManager.getMinOffset(e,r).next((r=>{let a=this.Co(n,t);return this.Fo(n,a,i,r.readTime)?this.vo(e,hs(n,null,`F`)):this.Oo(e,a,n,r)}))))})))))}So(e,t,n,r){return($f(t)?function(e){for(let t of e.stages){if(t instanceof Qu||t instanceof $u)return!1;if(t instanceof Zu){if(t.condition instanceof Fu&&t.condition._expr.name===`exists`&&t.condition._expr.params[0]instanceof Ou&&t.condition._expr.params[0].fieldName===Oi)continue;return!1}}return!0}(t):ls(t))||r.isEqual(G.min())?Y.resolve(null):this.bo.getDocuments(e,n).next((i=>{let a=this.Co(t,i);return this.Fo(t,a,n,r)?Y.resolve(null):(fi()<=_.DEBUG&&M(`QueryEngine`,`Re-using previous result from %s to execute query: %s`,r.toString(),ep(t)),this.Oo(e,a,t,Xo(r,Yo)).next((e=>e)))}))}Co(e,t){let n,r;return $f(e)?(n=new Ei(Hp),r=t=>bp(e,t)):(n=new Ei(ys(e)),r=t=>vs(e,t)),t.forEach(((e,t)=>{r(t)&&(n=n.add(t))})),n}Fo(e,t,n,r){if($f(e))return function(e){return e.stages.some((e=>e instanceof Qu||e instanceof $u))}(e);if(e.limit===null)return!1;if(n.size!==t.size)return!0;let i=e.limitType===`F`?t.last():t.first();return!!i&&(i.hasPendingWrites||i.version.compareTo(r)>0)}Do(e,t,n){return fi()<=_.DEBUG&&M(`QueryEngine`,`Using full collection scan to execute query:`,ep(t)),this.bo.getDocumentsMatchingQuery(e,t,Qo.min(),n)}Oo(e,t,n,r){return this.bo.getDocumentsMatchingQuery(e,n,r).next((e=>(t.forEach((t=>{e=e.insert(t.key,t)})),e)))}},Gp=`LocalStore`,Kp=3e8,qp=class{constructor(e,t,n,r){this.persistence=e,this.Mo=t,this.serializer=r,this.No=new L(I),this.Lo=new ws((e=>rp(e)),ip),this.Bo=new Map,this.Uo=e.getRemoteDocumentCache(),this.A_=e.getTargetCache(),this.d_=e.getBundleCache(),this.ko(n)}ko(e){this.documentOverlayCache=this.persistence.getDocumentOverlayCache(e),this.indexManager=this.persistence.getIndexManager(e),this.mutationQueue=this.persistence.getMutationQueue(e,this.indexManager),this.localDocuments=new Dp(this.Uo,this.mutationQueue,this.documentOverlayCache,this.indexManager),this.Uo.setIndexManager(this.indexManager),this.Mo.initialize(this.localDocuments,this.indexManager)}collectGarbage(e){return this.persistence.runTransaction(`Collect garbage`,`readwrite-primary`,(t=>e.collect(t,this.No)))}};function Jp(e,t,n,r){return new qp(e,t,n,r)}async function Yp(e,t){let n=F(e);return await n.persistence.runTransaction(`Handle user change`,`readonly`,(e=>{let r;
28return n.mutationQueue.getAllMutationBatches(e).next((i=>(r=i,n.ko(t),n.mutationQueue.getAllMutationBatches(e)))).next((t=>{let i=[],a=[],o=J();for(let e of r){i.push(e.batchId);for(let t of e.mutations)o=o.add(t.key)}for(let e of t){a.push(e.batchId);for(let t of e.mutations)o=o.add(t.key)}return n.localDocuments.getDocuments(e,o).next((e=>({qo:e,removedBatchIds:i,addedBatchIds:a})))}))}))}function Xp(e,t){let n=F(e);return n.persistence.runTransaction(`Acknowledge batch`,`readwrite-primary`,(e=>{let r=t.batch.keys(),i=n.Uo.newChangeBuffer({trackRemovals:!0});return function(e,t,n,r){let i=n.batch,a=i.keys(),o=Y.resolve();return a.forEach((e=>{o=o.next((()=>r.getEntry(t,e))).next((t=>{let a=n.docVersions.get(e);P(a!==null,48541),t.version.compareTo(a)<0&&(i.applyToRemoteDocument(t,n),t.isValidDocument()&&(t.setReadTime(n.commitVersion),r.addEntry(t)))}))})),o.next((()=>e.mutationQueue.removeMutationBatch(t,i)))}(n,e,t,i).next((()=>i.apply(e))).next((()=>n.mutationQueue.performConsistencyCheck(e))).next((()=>n.documentOverlayCache.removeOverlaysForBatchId(e,r,t.batch.batchId))).next((()=>n.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(e,function(e){let t=J();for(let n=0;n<e.mutationResults.length;++n)e.mutationResults[n].transformResults.length>0&&(t=t.add(e.batch.mutations[n].key));return t}(t)))).next((()=>n.localDocuments.getDocuments(e,r)))}))}function Zp(e){let t=F(e);return t.persistence.runTransaction(`Get last remote snapshot version`,`readonly`,(e=>t.A_.getLastRemoteSnapshotVersion(e)))}function Qp(e,t){let n=F(e),r=t.snapshotVersion,i=n.No;return n.persistence.runTransaction(`Apply remote event`,`readwrite-primary`,(e=>{let a=n.Uo.newChangeBuffer({trackRemovals:!0});i=n.No;let o=[];
28t.targetChanges.forEach(((a,s)=>{let c=i.get(s);if(!c)return;o.push(n.A_.removeMatchingKeys(e,a.removedDocuments,s).next((()=>n.A_.addMatchingKeys(e,a.addedDocuments,s))));let l=c.withSequenceNumber(e.currentSequenceNumber);t.targetMismatches.get(s)===null?a.resumeToken.approximateByteSize()>0&&(l=l.withResumeToken(a.resumeToken,r)):l=l.withResumeToken(Ji.EMPTY_BYTE_STRING,G.min()).withLastLimboFreeSnapshotVersion(G.min()),i=i.insert(s,l),function(e,t,n){return e.resumeToken.approximateByteSize()===0||t.snapshotVersion.toMicroseconds()-e.snapshotVersion.toMicroseconds()>=Kp||n.addedDocuments.size+n.modifiedDocuments.size+n.removedDocuments.size>0}(c,l,a)&&o.push(n.A_.updateTargetData(e,l))}));let s=Es(),c=J();if(t.documentUpdates.forEach((r=>{t.resolvedLimboDocuments.has(r)&&o.push(n.persistence.referenceDelegate.updateLimboDocument(e,r))})),o.push($p(e,a,t.documentUpdates).next((e=>{s=e.$o,c=e.Ko}))),!r.isEqual(G.min())){let t=n.A_.getLastRemoteSnapshotVersion(e).next((t=>n.A_.setTargetsMetadata(e,e.currentSequenceNumber,r)));o.push(t)}return Y.waitFor(o).next((()=>a.apply(e))).next((()=>n.localDocuments.getLocalViewOfDocuments(e,s,c))).next((()=>s))})).then((e=>(n.No=i,e)))}function $p(e,t,n){let r=J(),i=J();return n.forEach((e=>r=r.add(e))),t.getEntries(e,r).next((e=>{let r=Es();return n.forEach(((n,a)=>{let o=e.get(n);a.isFoundDocument()!==o.isFoundDocument()&&(i=i.add(n)),a.isNoDocument()&&a.version.isEqual(G.min())?(t.removeEntry(n,a.readTime),r=r.insert(n,a)):!o.isValidDocument()||a.version.compareTo(o.version)>0||a.version.compareTo(o.version)===0&&o.hasPendingWrites?(t.addEntry(a),r=r.insert(n,a)):M(Gp,`Ignoring outdated watch update for `,n,`. Current version:`,o.version,` Watch version:`,a.version)})),{$o:r,Ko:i}}))}function em(e,t){let n=F(e);return n.persistence.runTransaction(`Get next mutation batch`,`readonly`,(e=>(t===void 0&&(t=la),n.mutationQueue.getNextMutationBatchAfterBatchId(e,t))))}function tm(e,t){let n=F(e);return n.persistence.runTransaction(`Allocate target`,`readwrite`,(e=>{let r;return n.A_.getTargetData(e,t).next((i=>i?(r=i,Y.resolve(r)):n.A_.allocateTargetId(e).next((i=>(r=new fp(t,i,`TargetPurposeListen`,e.currentSequenceNumber),n.A_.addTargetData(e,r).next((()=>r)))))))})).then((e=>{let r=n.No.get(e.targetId);return(r===null||e.snapshotVersion.compareTo(r.snapshotVersion)>0)&&(n.No=n.No.insert(e.targetId,e),n.Lo.set(t,e.targetId)),e}))}async function nm(e,t,n){let r=F(e),i=r.No.get(t),a=n?`readwrite`:`readwrite-primary`;try{n||await r.persistence.runTransaction(`Release target`,a,(e=>r.persistence.referenceDelegate.removeTarget(e,i)))}catch(e){if(!Fl(e))throw e;M(Gp,`Failed to update sequence numbers for target ${t}: ${e}`)}r.No=r.No.remove(t),r.Lo.delete(i.target)}function rm(e,t,n){let r=F(e),i=G.min(),a=J();return r.persistence.runTransaction(`Execute query`,`readwrite`,(e=>function(e,t,n){let r=F(e),i=r.Lo.get(n);return i===void 0?r.A_.getTargetData(t,n):Y.resolve(r.No.get(i))}(r,e,$f(t)?t:ps(t)).next((t=>{if(t)return i=t.lastLimboFreeSnapshotVersion,r.A_.getMatchingKeysForTargetId(e,t.targetId).next((e=>{a=e}))})).next((()=>r.Mo.getDocumentsMatchingQuery(e,t,n?i:G.min(),n?a:J()))).next((e=>(im(r,e),{documents:e,Wo:a})))))}function im(e,t){t.forEach(((t,n)=>{let r=n.key.getCollectionGroup(),i=e.Bo.get(r)||G.min();n.readTime.compareTo(i)>0&&e.Bo.set(r,n.readTime)}))}var am=class{constructor(e,t){this.asyncQueue=e,this.onlineStateHandler=t,this.state=`Unknown`,this.Jo=0,this.Yo=null,this.Zo=!0}Xo(){this.Jo===0&&(this.ea(`Unknown`),this.Yo=this.asyncQueue.enqueueAfterDelay(`online_state_timeout`,1e4,(()=>(this.Yo=null,this.ta(`Backend didn't respond within 10 seconds.`),this.ea(`Offline`),Promise.resolve()))))}na(e){this.state===`Online`?this.ea(`Unknown`):(this.Jo++,this.Jo>=1&&(this.ra(),this.ta(`Connection failed 1 times. Most recent error: ${e.toString()}`),this.ea(`Offline`)))}set(e){this.ra(),this.Jo=0,e===`Online`&&(this.Zo=!1),this.ea(e)}ea(e){e!==this.state&&(this.state=e,this.onlineStateHandler(e))}ta(e){let t=`Could not reach Cloud Firestore backend. ${e}\nThis typically indicates that your device does not have a healthy Internet connection at the moment. The client will operate in offline mode until it is able to successfully connect to the backend.`;this.Zo?(pi(t),this.Zo=!1):M(`OnlineStateTracker`,t)}ra(){this.Yo!==null&&(this.Yo.cancel(),this.Yo=null)}},om=`RemoteStore`,sm=class{constructor(e,t,n,r,i){this.localStore=e,this.datastore=t,this.asyncQueue=n,this.remoteSyncer={},this.ia=[],this.sa=new Map,this._a=new Map,this.oa=new Map,this.aa=new vp(1e3),this.ua=new vp(1001),this.ca=new Set,this.la=[],this.Ea=i,this.Ea.Ke((e=>{n.enqueueAndForget((async()=>
28{_m(this)&&(M(om,`Restarting streams for network reachability change.`),await async function(e){let t=F(e);t.ca.add(4),await lm(t),t.ha.set(`Unknown`),t.ca.delete(4),await cm(t)}(this))}))})),this.ha=new am(n,r)}};async function cm(e){if(_m(e))for(let t of e.la)await t(!0)}async function lm(e){for(let t of e.la)await t(!1)}function um(e,t){return e._a.get(t)||void 0}function dm(e,t){let n=F(e),r=um(n,t.targetId);if(r!==void 0&&n.sa.has(r))return;let i=function(e,t){let n=um(e,t);n!==void 0&&e.oa.delete(n);let r=function(e,t){return t%2==0?e.aa.next():e.ua.next()}(e,t);return e._a.set(t,r),e.oa.set(r,t),r}(n,t.targetId);M(om,`remoteStoreListen mapping SDK target ID to remote`,t.targetId,i);let a=new fp(t.target,i,t.purpose,t.sequenceNumber,t.snapshotVersion,t.lastLimboFreeSnapshotVersion,t.resumeToken);n.sa.set(i,a),gm(n)?hm(n):Im(n).Jt()&&pm(n,a)}function fm(e,t){let n=F(e),r=Im(n),i=um(n,t);M(om,`remoteStoreUnlisten removing mapping of SDK target ID to remote`,t,i),n.sa.delete(i),n._a.delete(t),n.oa.delete(i),r.Jt()&&mm(n,i),n.sa.size===0&&(r.Jt()?r.Xt():_m(n)&&n.ha.set(`Unknown`))}function pm(e,t){if(e.Ta.H(t.targetId),t.resumeToken.approximateByteSize()>0||t.snapshotVersion.compareTo(G.min())>0){let n=e.oa.get(t.targetId);if(n===void 0)return void M(om,`SDK target ID not found for remote ID: `+t.targetId);let r=e.remoteSyncer.getRemoteKeysForTarget(n).size;t=t.withExpectedCount(r)}Im(e).Tn(t)}function mm(e,t){e.Ta.H(t),Im(e).Pn(t)}function hm(e){e.Ta=new Zs({getRemoteKeysForTarget:t=>{let n=e.oa.get(t);return n===void 0?J():e.remoteSyncer.getRemoteKeysForTarget(n)},ge:t=>e.sa.get(t)||null,Ae:()=>e.datastore.serializer.databaseId}),Im(e).start(),e.ha.Xo()}function gm(e){return _m(e)&&!Im(e).Ht()&&e.sa.size>0}function _m(e){return F(e).ca.size===0}function vm(e){e.Ta=void 0}async function ym(e){e.ha.set(`Online`)}async function bm(e){e.sa.forEach(((t,n)=>{pm(e,t)}))}async function xm(e,t){vm(e),gm(e)?(e.ha.na(t),hm(e)):e.ha.set(`Unknown`)}async function Sm(e,t,n){if(e.ha.set(`Online`),t instanceof Js&&t.state===2&&t.cause)try{await async function(e,t){let n=t.cause;for(let r of t.targetIds){if(e.sa.has(r)){let t=e.oa.get(r);t!==void 0&&(await e.remoteSyncer.rejectListen(t,n),e._a.delete(t),e.oa.delete(r)),e.sa.delete(r)}e.Ta.removeTarget(r)}}(e,t)}catch(n){M(om,`Failed to remove targets %s: %s `,t.targetIds.join(`,`),n),await Cm(e,n)}else if(t instanceof Ks?e.Ta.se(t):t instanceof qs?e.Ta.Ee(t):e.Ta.ae(t),!n.isEqual(G.min()))try{let t=await Zp(e.localStore);n.compareTo(t)>=0&&await function(e,t){let n=e.Ta.de(t);
28n.targetChanges.forEach(((n,r)=>{if(n.resumeToken.approximateByteSize()>0){let i=e.sa.get(r);i&&e.sa.set(r,i.withResumeToken(n.resumeToken,t))}})),n.targetMismatches.forEach(((t,n)=>{let r=e.sa.get(t);r&&(e.sa.set(t,r.withResumeToken(Ji.EMPTY_BYTE_STRING,r.snapshotVersion)),mm(e,t),pm(e,new fp(r.target,t,n,r.sequenceNumber)))}));let r=function(e,t){let n=new Map;t.targetChanges.forEach(((t,r)=>{let i=e.oa.get(r);i!==void 0&&n.set(i,t)}));let r=new L(I);return t.targetMismatches.forEach(((t,n)=>{let i=e.oa.get(t);i!==void 0&&(r=r.insert(i,n))})),new Ws(t.snapshotVersion,n,r,t.documentUpdates,t.augmentedDocumentUpdates,t.resolvedLimboDocuments)}(e,n);return e.remoteSyncer.applyRemoteEvent(r)}(e,n)}catch(t){M(om,`Failed to raise snapshot:`,t),await Cm(e,t)}}async function Cm(e,t,n){if(!Fl(t))throw t;e.ca.add(1),await lm(e),e.ha.set(`Offline`),n||=()=>Zp(e.localStore),e.asyncQueue.enqueueRetryable((async()=>{M(om,`Retrying IndexedDB access`),await n(),e.ca.delete(1),await cm(e)}))}function wm(e,t){return t().catch((n=>Cm(e,n,t)))}async function Tm(e){let t=F(e),n=Lm(t),r=t.ia.length>0?t.ia[t.ia.length-1].batchId:la;for(;Em(t);)try{let e=await em(t.localStore,r);if(e===null){t.ia.length===0&&n.Xt();break}r=e.batchId,Dm(t,e)}catch(e){await Cm(t,e)}Om(t)&&km(t)}function Em(e){return _m(e)&&e.ia.length<10}function Dm(e,t){e.ia.push(t);let n=Lm(e);n.Jt()&&n.Rn&&n.In(t.mutations)}function Om(e){return _m(e)&&!Lm(e).Ht()&&e.ia.length>0}function km(e){Lm(e).start()}async function Am(e){Lm(e).dn()}async function jm(e){let t=Lm(e);for(let n of e.ia)t.In(n.mutations)}async function Mm(e,t,n){let r=e.ia.shift(),i=op.from(r,t,n);await wm(e,(()=>e.remoteSyncer.applySuccessfulWrite(i))),await Tm(e)}async function Nm(e,t){t&&Lm(e).Rn&&await async function(e,t){if(function(e){return Ss(e)&&e!==R.ABORTED}(t.code)){let n=e.ia.shift();Lm(e).Zt(),await wm(e,(()=>e.remoteSyncer.rejectFailedWrite(n.batchId,t))),await Tm(e)}}(e,t),Om(e)&&km(e)}async function Pm(e,t){let n=F(e);n.asyncQueue.verifyOperationInProgress(),M(om,`RemoteStore received new credentials`);let r=_m(n);n.ca.add(3),await lm(n),r&&n.ha.set(`Unknown`),await n.remoteSyncer.handleCredentialChange(t),n.ca.delete(3),await cm(n)}async function Fm(e,t){let n=F(e);t?(n.ca.delete(2),await cm(n)):t||(n.ca.add(2),await lm(n),n.ha.set(`Unknown`))}function Im(e){return e.Pa||(e.Pa=function(e,t,n){let r=F(e);return r.mn(),new yl(t,r.connection,r.authCredentials,r.appCheckCredentials,r.serializer,n)}(e.datastore,e.asyncQueue,{ut:ym.bind(null,e),lt:bm.bind(null,e),ht:xm.bind(null,e),hn:Sm.bind(null,e)}),e.la.push((async t=>{t?(e.Pa.Zt(),gm(e)?hm(e):e.ha.set(`Unknown`)):(await e.Pa.stop(),vm(e))}))),e.Pa}function Lm(e){return e.Ra||(e.Ra=function(e,t,n){let r=F(e);return r.mn(),new bl(t,r.connection,r.authCredentials,r.appCheckCredentials,r.serializer,n)}(e.datastore,e.asyncQueue,{ut:()=>Promise.resolve(),lt:Am.bind(null,e),ht:Nm.bind(null,e),An:jm.bind(null,e),Vn:Mm.bind(null,e)}),e.la.push((async t=>{t?(e.Ra.Zt(),await Tm(e)):(await e.Ra.stop(),e.ia.length>0&&(M(om,`Stopping write stream with ${e.ia.length} pending writes`),e.ia=[]))}))),e.Ra}var Rm=class{constructor(e){this.observer=e,this.muted=!1}next(e){this.muted||this.observer.next&&this.Ia(this.observer.next,e)}error(e){this.muted||(this.observer.error?this.Ia(this.observer.error,e):pi(`Uncaught Error in snapshot listener:`,e.toString()))}Aa(){this.muted=!0}Ia(e,t){setTimeout((()=>{this.muted||e(t)}),0)}},zm=class e{constructor(e,t,n,r,i){this.asyncQueue=e,this.timerId=t,this.targetTimeMs=n,this.op=r,this.removalCallback=i,this.deferred=new qc,this.then=this.deferred.promise.then.bind(this.deferred.promise),this.deferred.promise.catch((e=>{}))}get promise(){return this.deferred.promise}static createAndSchedule(t,n,r,i,a){let o=Date.now()+r,s=new e(t,n,o,i,a);return s.start(r),s}start(e){this.timerHandle=setTimeout((()=>this.handleDelayElapsed()),e)}skipDelay(){return this.handleDelayElapsed()}cancel(e){this.timerHandle!==null&&(this.clearTimeout(),this.deferred.reject(new z(R.CANCELLED,`Operation cancelled`+(e?`: `+e:``))))}handleDelayElapsed(){this.asyncQueue.enqueueAndForget((()=>this.timerHandle===null?Promise.resolve():(this.clearTimeout(),this.op().then((e=>
28this.deferred.resolve(e))))))}clearTimeout(){this.timerHandle!==null&&(this.removalCallback(this),clearTimeout(this.timerHandle),this.timerHandle=null)}};function Bm(e,t){if(pi(`AsyncQueue`,`${t}: ${e}`),Fl(e))return new z(R.UNAVAILABLE,`${t}: ${e}`);throw e}var Vm=class{constructor(){this.activeTargetIds=Is()}La(e){this.activeTargetIds=this.activeTargetIds.add(e)}Ba(e){this.activeTargetIds=this.activeTargetIds.delete(e)}Na(){let e={activeTargetIds:this.activeTargetIds.toArray(),updateTimeMs:Date.now()};return JSON.stringify(e)}},Hm=class{constructor(){this.du=new Vm,this.fu={},this.onlineStateHandler=null,this.sequenceNumberHandler=null}addPendingMutation(e){}updateMutationState(e,t,n){}addLocalQueryTarget(e,t=!0){return t&&this.du.La(e),this.fu[e]||`not-current`}updateQueryState(e,t,n){this.fu[e]=t}removeLocalQueryTarget(e){this.du.Ba(e)}isLocalQueryTarget(e){return this.du.activeTargetIds.has(e)}clearQueryState(e){delete this.fu[e]}getAllActiveQueryTargets(){return this.du.activeTargetIds}isActiveQueryTarget(e){return this.du.activeTargetIds.has(e)}start(){return this.du=new Vm,Promise.resolve()}handleUserChange(e,t,n){}setOnlineState(e){}shutdown(){}writeSequenceNumber(e){}notifyBundleLoaded(e){}};function Um(){return typeof document<`u`?document:null}var Wm=class e{static emptySet(t){return new e(t.comparator)}constructor(e){this.comparator=e?(t,n)=>e(t,n)||V.comparator(t.key,n.key):(e,t)=>V.comparator(e.key,t.key),this.keyedMap=Os(),this.sortedSet=new L(this.comparator)}has(e){return this.keyedMap.get(e)!=null}get(e){return this.keyedMap.get(e)}first(){return this.sortedSet.minKey()}last(){return this.sortedSet.maxKey()}isEmpty(){return this.sortedSet.isEmpty()}indexOf(e){let t=this.keyedMap.get(e);return t?this.sortedSet.indexOf(t):-1}get size(){return this.sortedSet.size}forEach(e){this.sortedSet.inorderTraversal(((t,n)=>(e(t),!1)))}add(e){let t=this.delete(e.key);return t.copy(t.keyedMap.insert(e.key,e),t.sortedSet.insert(e,null))}delete(e){let t=this.get(e);return t?this.copy(this.keyedMap.remove(e),this.sortedSet.remove(t)):this}isEqual(t){if(!(t instanceof e)||this.size!==t.size)return!1;let n=this.sortedSet.getIterator(),r=t.sortedSet.getIterator();for(;n.hasNext();){let e=n.getNext().key,t=r.getNext().key;if(!e.isEqual(t))return!1}return!0}toString(){let e=[];return this.forEach((t=>{e.push(t.toString())})),e.length===0?`DocumentSet ()`:`DocumentSet (
29  `+e.join(`  
30`)+`
31)`}copy(t,n){let r=new e;return r.comparator=this.comparator,r.keyedMap=t,r.sortedSet=n,r}},Gm=class{constructor(){this.mu=new L(V.comparator)}track(e){let t=e.doc.key,n=this.mu.get(t);n?e.type!==0&&n.type===3?this.mu=this.mu.insert(t,e):e.type===3&&n.type!==1?this.mu=this.mu.insert(t,{type:n.type,doc:e.doc}):e.type===2&&n.type===2?this.mu=this.mu.insert(t,{type:2,doc:e.doc}):e.type===2&&n.type===0?this.mu=this.mu.insert(t,{type:0,doc:e.doc}):e.type===1&&n.type===0?this.mu=this.mu.remove(t):e.type===1&&n.type===2?this.mu=this.mu.insert(t,{type:1,doc:n.doc}):e.type===0&&n.type===1?this.mu=this.mu.insert(t,{type:2,doc:e.doc}):N(63341,{ye:e,pu:n}):this.mu=this.mu.insert(t,e)}gu(){let e=[];return this.mu.inorderTraversal(((t,n)=>{e.push(n)})),e}},Km=class e{constructor(e,t,n,r,i,a,o,s,c){this.query=e,this.docs=t,this.oldDocs=n,this.docChanges=r,this.mutatedKeys=i,this.fromCache=a,this.syncStateChanged=o,this.excludesMetadataChanges=s,this.hasCachedResults=c}static fromInitialDocuments(t,n,r,i,a){let o=[];return n.forEach((e=>{o.push({type:0,doc:e})})),new e(t,n,Wm.emptySet(n),o,r,i,!0,!1,a)}get hasPendingWrites(){return!this.mutatedKeys.isEmpty()}isEqual(e){if(!(this.fromCache===e.fromCache&&this.hasCachedResults===e.hasCachedResults&&this.syncStateChanged===e.syncStateChanged&&this.mutatedKeys.isEqual(e.mutatedKeys)&&np(this.query,e.query)&&this.docs.isEqual(e.docs)&&this.oldDocs.isEqual(e.oldDocs)))return!1;let t=this.docChanges,n=e.docChanges;if(t.length!==n.length)return!1;for(let e=0;e<t.length;e++)if(t[e].type!==n[e].type||!t[e].doc.isEqual(n[e].doc))return!1;return!0}},qm=class{constructor(){this.yu=void 0,this.wu=[]}bu(){return this.wu.some((e=>e.vu()))}},Jm=class{constructor(){this.queries=Ym(),this.onlineState=`Unknown`,this.Su=new Set}terminate(){(function(e,t){let n=F(e),r=n.queries;n.queries=Ym(),r.forEach(((e,n)=>{for(let e of n.wu)e.onError(t)}))})(this,new z(R.ABORTED,`Firestore shutting down`))}};function Ym(){return new ws((e=>tp(e)),np)}async function Xm(e,t){let n=F(e),r=3,i=t.query,a=n.queries.get(i);a?!a.bu()&&t.vu()&&(r=2):(a=new qm,r=+!t.vu());try{switch(r){case 0:a.yu=await n.onListen(i,!0);break;case 1:a.yu=await n.onListen(i,!1);break;case 2:await n.onFirstRemoteStoreListen(i)}}catch(e){let n=Bm(e,`Initialization of query '${$f(t.query)?Zf(t.query):_s(t.query)}' failed`);t.onError(n);return}n.queries.set(i,a),a.wu.push(t),t.Du(n.onlineState),a.yu&&t.xu(a.yu)&&eh(n)}async function Zm(e,t){let n=F(e),r=t.query,i=3,a=n.queries.get(r);if(a){let e=a.wu.indexOf(t);e>=0&&(a.wu.splice(e,1),a.wu.length===0?i=+!t.vu():!a.bu()&&t.vu()&&(i=2))}switch(i){case 0:return n.queries.delete(r),n.onUnlisten(r,!0);case 1:return n.queries.delete(r),n.onUnlisten(r,!1);case 2:return n.onLastRemoteStoreUnlisten(r);default:return}}function Qm(e,t){let n=F(e),r=!1;for(let e of t){let t=e.query,i=n.queries.get(t);if(i){for(let t of i.wu)t.xu(e)&&(r=!0);i.yu=e}}r&&eh(n)}function $m(e,t,n){let r=F(e),i=r.queries.get(t);if(i)for(let e of i.wu)e.onError(n);r.queries.delete(t)}function eh(e){e.Su.forEach((e=>{e.next()}))}var th;(function(e){e.Default=`default`,e.Cache=`cache`})(th||={});var nh=class{constructor(e,t,n){this.query=e,this.Cu=t,this.Fu=!1,this.Ou=null,this.onlineState=`Unknown`,this.options=n||{}}xu(e){if(!this.options.includeMetadataChanges){let t=[];for(let n of e.docChanges)n.type!==3&&t.push(n);e=new Km(e.query,e.docs,e.oldDocs,t,e.mutatedKeys,e.fromCache,e.syncStateChanged,!0,e.hasCachedResults)}let t=!1;return this.Fu?this.Mu(e)&&(this.Cu.next(e),t=!0):this.Nu(e,this.onlineState)&&(this.Lu(e),t=!0),this.Ou=e,t}onError(e){this.Cu.error(e)}Du(e){this.onlineState=e;let t=!1;return this.Ou&&!this.Fu&&this.Nu(this.Ou,e)&&(this.Lu(this.Ou),t=!0),t}Nu(e,t){if(!e.fromCache||!this.vu())return!0;let n=t!==`Offline`;
31return(!this.options.waitForSyncWhenOnline||!n)&&(!e.docs.isEmpty()||e.hasCachedResults||t===`Offline`)}Mu(e){if(e.docChanges.length>0)return!0;let t=this.Ou&&this.Ou.hasPendingWrites!==e.hasPendingWrites;return!(!e.syncStateChanged&&!t)&&!0===this.options.includeMetadataChanges}Lu(e){e=Km.fromInitialDocuments(e.query,e.docs,e.mutatedKeys,e.fromCache,e.hasCachedResults),this.Fu=!0,this.Cu.next(e)}vu(){return this.options.source!==th.Cache}},rh=class{constructor(e){this.key=e}},ih=class{constructor(e){this.key=e}},ah=class{constructor(e,t){this.query=e,this.Gu=t,this.zu=null,this.hasCachedResults=!1,this.current=!1,this.ju=J(),this.mutatedKeys=J(),this.Hu=$f(e)?Cp(e):ys(e),this.Ju=new Wm(this.Hu)}get Yu(){return this.Gu}Zu(e,t){let n=t?t.Xu:new Gm,r=t?t.Ju:this.Ju,i=t?t.mutatedKeys:this.mutatedKeys,a=r,o=!1,[s,c]=this.ec(this.query,r);e.inorderTraversal(((e,t)=>{let l=r.get(e),u=xp(this.query,t)?t:null,d=!!l&&this.mutatedKeys.has(l.key),f=!!u&&(u.hasLocalMutations||this.mutatedKeys.has(u.key)&&u.hasCommittedMutations),p=!1;l&&u?l.data.isEqual(u.data)?d!==f&&(n.track({type:3,doc:u}),p=!0):this.tc(l,u)||(n.track({type:2,doc:u}),p=!0,(s&&this.Hu(u,s)>0||c&&this.Hu(u,c)<0)&&(o=!0)):!l&&u?(n.track({type:0,doc:u}),p=!0):l&&!u&&(n.track({type:1,doc:l}),p=!0,(s||c)&&(o=!0)),p&&(u?(a=a.add(u),i=f?i.add(e):i.delete(e)):(a=a.delete(e),i=i.delete(e)))}));let l=this.nc(this.query);if(l)if($f(this.query)){let e=[];a.forEach((t=>e.push(t)));let t=yp(this.query,e),r=new Wm(Cp(this.query));for(let e of t)r=r.add(e);a.forEach((e=>{r.has(e.key)||(i=i.delete(e.key),n.track({type:1,doc:e}))})),a=r}else{let e=this.rc(this.query);for(;a.size>l;){let t=e===`F`?a.last():a.first();a=a.delete(t.key),i=i.delete(t.key),n.track({type:1,doc:t})}}return{Ju:a,Xu:n,Fo:o,mutatedKeys:i}}nc(e){return $f(e)?wp(e)?.limit:e.limit||void 0}rc(e){if($f(e)){let t=wp(e);return t&&t.limit<0?`L`:`F`}return e.limitType}ec(e,t){if($f(e)){let n=wp(e)?.limit;return[t.size===n?t.last():null,null]}return[e.limitType===`F`&&t.size===this.nc(this.query)?t.last():null,e.limitType===`L`&&t.size===this.nc(this.query)?t.first():null]}tc(e,t){return e.hasLocalMutations&&t.hasCommittedMutations&&!t.hasLocalMutations}applyChanges(e,t,n,r){let i=this.Ju;this.Ju=e.Ju,this.mutatedKeys=e.mutatedKeys;let a=e.Xu.gu();a.sort(((e,t)=>function(e,t){let n=e=>{switch(e){case 0:return 1;case 2:case 3:return 2;case 1:return 0;default:return N(20277,{ye:e})}};return n(e)-n(t)}(e.type,t.type)||this.Hu(e.doc,t.doc))),this.sc(n),r??=!1;let o=t&&!r?this._c():[],s=this.ju.size===0&&this.current&&!r?1:0,c=s!==this.zu;return this.zu=s,a.length!==0||c?{snapshot:new Km(this.query,e.Ju,i,a,e.mutatedKeys,s===0,c,!1,!!n&&n.resumeToken.approximateByteSize()>0),oc:o}:{oc:o}}Du(e){return this.current&&e===`Offline`?(this.current=!1,this.applyChanges({Ju:this.Ju,Xu:new Gm,mutatedKeys:this.mutatedKeys,Fo:!1},!1)):{oc:[]}}ac(e){return!this.Gu.has(e)&&!!this.Ju.has(e)&&!this.Ju.get(e).hasLocalMutations}sc(e){e&&(e.addedDocuments.forEach((e=>this.Gu=this.Gu.add(e))),e.modifiedDocuments.forEach((e=>{})),e.removedDocuments.forEach((e=>this.Gu=this.Gu.delete(e))),this.current=e.current)}_c(){if(!this.current)return[];let e=this.ju;this.ju=J(),this.Ju.forEach((e=>{this.ac(e.key)&&(this.ju=this.ju.add(e.key))}));let t=[];return e.forEach((e=>{this.ju.has(e)||t.push(new ih(e))})),this.ju.forEach((n=>{e.has(n)||t.push(new rh(n))})),t}uc(e){this.Gu=e.Wo,this.ju=J();let t=this.Zu(e.documents);return this.applyChanges(t,!0)}cc(){return Km.fromInitialDocuments(this.query,this.Ju,this.mutatedKeys,this.zu===0,this.hasCachedResults)}},oh=`SyncEngine`,sh=class{constructor(e,t,n){this.query=e,this.targetId=t,this.view=n}},ch=class{constructor(e){this.key=e,this.lc=!1}},lh=class{constructor(e,t,n,r,i,a){this.localStore=e,this.remoteStore=t,this.eventManager=n,this.sharedClientState=r,this.currentUser=i,this.maxConcurrentLimboResolutions=a,this.Ec={},this.hc=new ws((e=>tp(e)),np),this.Tc=new Map,this.Pc=new Set,this.Rc=new L(V.comparator),this.Ic=new Map,this.Ac=new jp,this.Vc={},this.dc=new Map,this.fc=vp.ws(),this.onlineState=`Unknown`,this.mc=void 0}get isPrimaryClient(){return!0===this.mc}};async function uh(e,t,n=!0){let r=Mh(e),i,a=r.hc.get(t);
31return a?(r.sharedClientState.addLocalQueryTarget(a.targetId),i=a.view.cc()):i=await fh(r,t,n,!0),i}async function dh(e,t){await fh(Mh(e),t,!0,!1)}async function fh(e,t,n,r){let i=await tm(e.localStore,$f(t)?t:ps(t)),a=i.targetId,o=e.sharedClientState.addLocalQueryTarget(a,n),s;return r&&(s=await ph(e,t,a,o===`current`,i.resumeToken)),e.isPrimaryClient&&n&&dm(e.remoteStore,i),s}async function ph(e,t,n,r,i){e.gc=(t,n,r)=>async function(e,t,n,r){let i=t.view.Zu(n);i.Fo&&(i=await rm(e.localStore,t.query,!1).then((({documents:e})=>t.view.Zu(e,i))));let a=r&&r.targetChanges.get(t.targetId),o=r&&r.targetMismatches.get(t.targetId)!=null,s=t.view.applyChanges(i,e.isPrimaryClient,a,o);return Eh(e,t.targetId,s.oc),s.snapshot}(e,t,n,r);let a=await rm(e.localStore,t,!0),o=new ah(t,a.Wo),s=o.Zu(a.documents),c=Gs.createSynthesizedTargetChangeForCurrentChange(n,r&&e.onlineState!==`Offline`,i),l=o.applyChanges(s,e.isPrimaryClient,c);Eh(e,n,l.oc);let u=new sh(t,n,o);return e.hc.set(t,u),e.Tc.has(n)?e.Tc.get(n).push(t):e.Tc.set(n,[t]),l.snapshot}async function mh(e,t,n){let r=F(e),i=r.hc.get(t),a=r.Tc.get(i.targetId);if(a.length>1)return r.Tc.set(i.targetId,a.filter((e=>!np(e,t)))),void r.hc.delete(t);r.isPrimaryClient?(r.sharedClientState.removeLocalQueryTarget(i.targetId),r.sharedCl
31ientState.isActiveQueryTarget(i.targetId)||await nm(r.localStore,i.targetId,!1).then((()=>{r.sharedClientState.clearQueryState(i.targetId),n&&fm(r.remoteStore,i.targetId),wh(r,i.targetId)})).catch(Nl)):(wh(r,i.targetId),await nm(r.localStore,i.targetId,!0))}async function hh(e,t){let n=F(e),r=n.hc.get(t),i=n.Tc.get(r.targetId);n.isPrimaryClient&&i.length===1&&(n.sharedClientState.removeLocalQueryTarget(r.targetId),fm(n.remoteStore,r.targetId))}async function gh(e,t,n){let r=Nh(e);try{let e=await function(e,t){let n=F(e),r=Ki.now(),i=t.reduce(((e,t)=>e.add(t.key)),J()),a,o;return n.persistence.runTransaction(`Locally write mutations`,`readwrite`,(e=>{let s=Es(),c=J();return n.Uo.getEntries(e,i).next((e=>{s=e,s.forEach(((e,t)=>{t.isValidDocument()||(c=c.add(e))}))})).next((()=>n.localDocuments.getOverlayedDocuments(e,s))).next((i=>{a=i;let o=[];for(let e of t){let t=_o(e,a.get(e.key).overlayedDocument);t!=null&&o.push(new bo(e.key,t,Ha(t.value.mapValue),uo.exists(!0)))}return n.mutationQueue.addMutationBatch(e,r,o,t)})).next((t=>{o=t;let r=t.applyToLocalDocumentSet(a,c);return n.documentOverlayCache.saveOverlays(e,t.batchId,r)}))})).then((()=>({batchId:o.batchId,changes:ks(a)})))}(r.localStore,t);r.sharedClientState.addPendingMutation(e.batchId),function(e,t,n){let r=e.Vc[e.currentUser.toKey()];r||=new L(I),r=r.insert(t,n),e.Vc[e.currentUser.toKey()]=r}(r,e.batchId,n),await kh(r,e.changes),await Tm(r.remoteStore)}catch(e){let t=Bm(e,`Failed to persist write`);n.reject(t)}}async function _h(e,t){let n=F(e);try{let e=await Qp(n.localStore,t);
31t.targetChanges.forEach(((e,t)=>{let r=n.Ic.get(t);r&&(P(e.addedDocuments.size+e.modifiedDocuments.size+e.removedDocuments.size<=1,22616),e.addedDocuments.size>0?r.lc=!0:e.modifiedDocuments.size>0?P(r.lc,14607):e.removedDocuments.size>0&&(P(r.lc,42227),r.lc=!1))})),await kh(n,e,t)}catch(e){await Nl(e)}}function vh(e,t,n){let r=F(e);if(r.isPrimaryClient&&n===0||!r.isPrimaryClient&&n===1){let e=[];r.hc.forEach(((n,r)=>{let i=r.view.Du(t);i.snapshot&&e.push(i.snapshot)})),function(e,t){let n=F(e);n.onlineState=t;let r=!1;n.queries.forEach(((e,n)=>{for(let e of n.wu)e.Du(t)&&(r=!0)})),r&&eh(n)}(r.eventManager,t),e.length&&r.Ec.hn(e),r.onlineState=t,r.isPrimaryClient&&r.sharedClientState.setOnlineState(t)}}async function yh(e,t,n){let r=F(e);r.sharedClientState.updateQueryState(t,`rejected`,n);let i=r.Ic.get(t),a=i&&i.key;if(a){let e=new L(V.comparator);e=e.insert(a,Jo.newNoDocument(a,G.min()));let n=J().add(a);await _h(r,new Ws(G.min(),new Map,new L(I),e,Es(),n)),r.Rc=r.Rc.remove(a),r.Ic.delete(t),Oh(r)}else await nm(r.localStore,t,!1).then((()=>wh(r,t,n))).catch(Nl)}async function bh(e,t){let n=F(e),r=t.batch.batchId;try{let e=await Xp(n.localStore,t);Ch(n,r,null),Sh(n,r),n.sharedClientState.updateMutationState(r,`acknowledged`),await kh(n,e)}catch(e){await Nl(e)}}async function xh(e,t,n){let r=F(e);try{let e=await function(e,t){let n=F(e);return n.persistence.runTransaction(`Reject batch`,`readwrite-primary`,(e=>{let r;
31return n.mutationQueue.lookupMutationBatch(e,t).next((t=>(P(t!==null,37113),r=t.keys(),n.mutationQueue.removeMutationBatch(e,t)))).next((()=>n.mutationQueue.performConsistencyCheck(e))).next((()=>n.documentOverlayCache.removeOverlaysForBatchId(e,r,t))).next((()=>n.localDocuments.recalculateAndSaveOverlaysForDocumentKeys(e,r))).next((()=>n.localDocuments.getDocuments(e,r)))}))}(r.localStore,t);Ch(r,t,n),Sh(r,t),r.sharedClientState.updateMutationState(t,`rejected`,n),await kh(r,e)}catch(e){await Nl(e)}}function Sh(e,t){(e.dc.get(t)||[]).forEach((e=>{e.resolve()})),e.dc.delete(t)}function Ch(e,t,n){let r=F(e),i=r.Vc[r.currentUser.toKey()];if(i){let e=i.get(t);e&&(n?e.reject(n):e.resolve(),i=i.remove(t)),r.Vc[r.currentUser.toKey()]=i}}function wh(e,t,n=null){e.sharedClientState.removeLocalQueryTarget(t);for(let r of e.Tc.get(t))e.hc.delete(r),n&&e.Ec.yc(r,n);e.Tc.delete(t),e.isPrimaryClient&&e.Ac.Xs(t).forEach((t=>{e.Ac.containsKey(t)||Th(e,t)}))}function Th(e,t){e.Pc.delete(t.path.canonicalString());let n=e.Rc.get(t);n!==null&&(fm(e.remoteStore,n),e.Rc=e.Rc.remove(t),e.Ic.delete(n),Oh(e))}function Eh(e,t,n){for(let r of n)r instanceof rh?(e.Ac.addReference(r.key,t),Dh(e,r)):r instanceof ih?(M(oh,`Document no longer in limbo: `+r.key),e.Ac.removeReference(r.key,t),e.Ac.containsKey(r.key)||Th(e,r.key)):N(19791,{wc:r})}function Dh(e,t){let n=t.key,r=n.path.canonicalString();e.Rc.get(n)||e.Pc.has(r)||(M(oh,`New document in limbo: `+n),e.Pc.add(r),Oh(e))}function Oh(e){for(;e.Pc.size>0&&e.Rc.size<e.maxConcurrentLimboResolutions;){let t=e.Pc.values().next().value;e.Pc.delete(t);let n=new V(B.fromString(t)),r=e.fc.next();e.Ic.set(r,new ch(n)),e.Rc=e.Rc.insert(n,r),dm(e.remoteStore,new fp(ps(cs(n.path)),r,`TargetPurposeLimboResolution`,Al.yn))}}async function kh(e,t,n){let r=F(e),i=[],a=[],o=[];r.hc.isEmpty()||(r.hc.forEach(((e,s)=>{o.push(r.gc(s,t,n).then((e=>{if((e||n)&&r.isPrimaryClient){let t=e?!e.fromCache:n?.targetChanges.get(s.targetId)?.current;
31r.sharedClientState.updateQueryState(s.targetId,t?`current`:`not-current`)}if(e){i.push(e);let t=Vp.fo(s.targetId,e);a.push(t)}})))})),await Promise.all(o),r.Ec.hn(i),await async function(e,t){let n=F(e);try{await n.persistence.runTransaction(`notifyLocalViewChanges`,`readwrite`,(e=>Y.forEach(t,(t=>Y.forEach(t.Ao,(r=>n.persistence.referenceDelegate.addReference(e,t.targetId,r))).next((()=>Y.forEach(t.Vo,(r=>n.persistence.referenceDelegate.removeReference(e,t.targetId,r)))))))))}catch(e){if(!Fl(e))throw e;M(Gp,`Failed to update sequence numbers: `+e)}for(let e of t){let t=e.targetId;if(!e.fromCache){let e=n.No.get(t),r=e.snapshotVersion,i=e.withLastLimboFreeSnapshotVersion(r);n.No=n.No.insert(t,i)}}}(r.localStore,a))}async function Ah(e,t){let n=F(e);if(!n.currentUser.isEqual(t)){M(oh,`User change. New user:`,t.toKey());let e=await Yp(n.localStore,t);n.currentUser=t,function(e,t){e.dc.forEach((e=>{e.forEach((e=>{e.reject(new z(R.CANCELLED,t))}))})),e.dc.clear()}(n,`'waitForPendingWrites' promise is rejected due to a user change.`),n.sharedClientState.handleUserChange(t,e.removedBatchIds,e.addedBatchIds),await kh(n,e.qo)}}function jh(e,t){let n=F(e),r=n.Ic.get(t);if(r&&r.lc)return J().add(r.key);{let e=J(),r=n.Tc.get(t);if(!r)return e;for(let t of r??[]){let r=n.hc.get(t);e=e.unionWith(r.view.Yu)}return e}}function Mh(e){let t=F(e);return t.remoteStore.remoteSyncer.applyRemoteEvent=_h.bind(null,t),t.remoteStore.remoteSyncer.getRemoteKeysForTarget=jh.bind(null,t),t.remoteStore.remoteSyncer.rejectListen=yh.bind(null,t),t.Ec.hn=Qm.bind(null,t.eventManager),t.Ec.yc=$m.bind(null,t.eventManager),t}function Nh(e){let t=F(e);return t.remoteStore.remoteSyncer.applySuccessfulWrite=bh.bind(null,t),t.remoteStore.remoteSyncer.rejectFailedWrite=xh.bind(null,t),t}var Ph=class{constructor(){this.kind=`memory`,this.synchronizeTabs=!1}async initialize(e){this.serializer=Bc(e.databaseInfo.databaseId),this.sharedClientState=this.vc(e),this.persistence=this.Sc(e),await this.persistence.start(),this.localStore=this.Dc(e),this.gcScheduler=this.xc(e,this.localStore),this.indexBackfillerScheduler=this.Cc(e,this.localStore)}xc(e,t){return null}Cc(e,t){return null}Dc(e){return Jp(this.persistence,new Wp,e.initialUser,this.serializer)}Sc(e){return new Lp(zp.w_,this.serializer)}vc(e){return new Hm}async terminate(){this.gcScheduler?.stop(),this.indexBackfillerScheduler?.stop(),this.sharedClientState.shutdown(),await this.persistence.shutdown()}};Ph.provider={build:()=>new Ph};var Fh=class extends Ph{constructor(e){super(),this.cacheSizeBytes=e}xc(e,t){P(this.persistence.referenceDelegate instanceof Bp,46915);let n=this.persistence.referenceDelegate.garbageCollector;return new Bl(n,e.asyncQueue,t)}Sc(e){let t=this.cacheSizeBytes===void 0?kl.DEFAULT:kl.withCacheSize(this.cacheSizeBytes);return new Lp((e=>Bp.w_(e,t)),this.serializer)}},Ih=class{async initialize(e,t){this.localStore||(this.localStore=e.localStore,this.sharedClientState=e.sharedClientState,this.datastore=this.createDatastore(t),this.remoteStore=this.createRemoteStore(t),this.eventManager=this.createEventManager(t),this.syncEngine=this.createSyncEngine(t,!e.synchronizeTabs),this.sharedClientState.onlineStateHandler=e=>vh(this.syncEngine,e,1),this.remoteStore.remoteSyncer.handleCredentialChange=Ah.bind(null,this.syncEngine),await Fm(this.remoteStore,this.syncEngine.isPrimaryClient))}createEventManager(e){return function(){return new Jm}()}createDatastore(e){let t=Bc(e.databaseInfo.databaseId),n=hl(e.databaseInfo);return Cl(e.authCredentials,e.appCheckCredentials,n,t)}createRemoteStore(e){return function(e,t,n,r,i){return new sm(e,t,n,r,i)}(this.localStore,this.datastore,e.asyncQueue,(e=>vh(this.syncEngine,e,0)),function(){return al.Je()?new al:new rl}())}createSyncEngine(e,t){return function(e,t,n,r,i,a,o){let s=new lh(e,t,n,r,i,a);return o&&(s.mc=!0),s}(this.localStore,this.remoteStore,this.eventManager,this.sharedClientState,e.initialUser,e.maxConcurrentLimboResolutions,t)}async terminate(){await async function(e){let t=F(e);M(om,`RemoteStore shutting down.`),t.ca.add(5),await lm(t),t.Ea.shutdown(),t.ha.set(`Unknown`)}(this.remoteStore),this.datastore?.terminate(),this.eventManager?.terminate()}};Ih.provider={build:()=>new Ih};var Lh=`FirestoreClient`,Rh=class{constructor(e,t,n,r,i){this.authCredentials=e,this.appCheckCredentials=t,this.asyncQueue=n,this._databaseInfo=r,this.user=Kc.UNAUTHENTICATED,this.clientId=vi.newId(),this.authCredentialListener=()=>Promise.resolve(),this.appCheckCredentialListener=()=>Promise.resolve(),this._uninitializedComponentsProvider=i,this.authCredentials.start(n,(async e=>{M(Lh,`Received user=`,e.uid),await this.authCredentialListener(e),this.user=e})),this.appCheckCredentials.start(n,(e=>(M(Lh,`Received new app check token=`,e),this.appCheckCredentialListener(e,this.user))))}get configuration(){return{asyncQueue:this.asyncQueue,databaseInfo:this._databaseInfo,clientId:this.clientId,authCredentials:this.authCredentials,appCheckCredentials:this.appCheckCredentials,initialUser:this.user,maxConcurrentLimboResolutions:100}}setCredentialChangeListener(e){this.authCredentialListener=e}setAppCheckTokenChangeListener(e){this.appCheckCredentialListener=e}terminate(){this.asyncQueue.enterRestrictedMode();let e=new qc;return this.asyncQueue.enqueueAndForgetEvenWhileRestricted((async()=>{try{this._onlineComponents&&await this._onlineComponents.terminate(),this._offlineComponents&&await this._offlineComponents.terminate(),this.authCredentials.shutdown(),this.appCheckCredentials.shutdown(),e.resolve()}catch(t){let n=Bm(t,`Failed to shutdown persistence`);e.reject(n)}})),e.promise}};async function zh(e,t){e.asyncQueue.verifyOperationInProgress(),M(Lh,`Initializing OfflineComponentProvider`);let n=e.configuration;await t.initialize(n);let r=n.initialUser;e.setCredentialChangeListener((async e=>{r.isEqual(e)||(await Yp(t.localStore,e),r=e)})),t.persistence.setDatabaseDeletedListener((()=>e.terminate())),e._offlineComponents=t}async function Bh(e,t){e.asyncQueue.verifyOperationInProgress();let n=await Vh(e);M(Lh,`Initializing OnlineComponentProvider`),await t.initialize(n,e.configuration),e.setCredentialChangeListener((e=>Pm(t.remoteStore,e))),e.setAppCheckTokenChangeListener(((e,n)=>Pm(t.remoteStore,n))),e._onlineComponents=t}async function Vh(e){if(!e._offlineComponents)if(e._uninitializedComponentsProvider){M(Lh,`Using user provided OfflineComponentProvider`);try{await zh(e,e._uninitializedComponentsProvider._offline)}catch(t){let n=t;if(!function(e){return e.name===`FirebaseError`?e.code===R.FAILED_PRECONDITION||e.code===R.UNIMPLEMENT
31ED:!(typeof DOMException<`u`&&e instanceof DOMException)||e.code===22||e.code===20||e.code===11}(n))throw n;mi(`Error using user provided cache. Falling back to memory cache: `+n),await zh(e,new Ph)}}else M(Lh,`Using default OfflineComponentProvider`),await zh(e,new Fh(void 0));return e._offlineComponents}async function Hh(e){return e._onlineComponents||(e._uninitializedComponentsProvider?(M(Lh,`Using user provided OnlineComponentProvider`),await Bh(e,e._uninitializedComponentsProvider._online)):(M(Lh,`Using default OnlineComponentProvider`),await Bh(e,new Ih))),e._onlineComponents}function Uh(e){return Hh(e).then((e=>e.syncEngine))}async function Wh(e){let t=await Hh(e),n=t.eventManager;return n.onListen=uh.bind(null,t.syncEngine),n.onUnlisten=mh.bind(null,t.syncEngine),n.onFirstRemoteStoreListen=dh.bind(null,t.syncEngine),n.onLastRemoteStoreUnlisten=hh.bind(null,t.syncEngine),n}function Gh(e,t,n,r){let i=new Rm(r),a=new nh(t,i,n);return e.asyncQueue.enqueueAndForget((async()=>Xm(await Wh(e),a))),()=>{i.Aa(),e.asyncQueue.enqueueAndForget((async()=>Zm(await Wh(e),a)))}}function Kh(e,t){let n=new qc;return e.asyncQueue.enqueueAndForget((async()=>gh(await Uh(e),t,n))),n.promise}var qh=`AsyncQueue`,Jh=class{constructor(e=Promise.resolve()){this.Wc=[],this.Qc=!1,this.Gc=[],this.zc=null,this.jc=!1,this.Hc=!1,this.Jc=[],this.jt=new gl(this,`async_queue_retry`),this.Yc=()=>{let e=Um();e&&M(qh,`Visibility state changed to `+e.visibilityState),this.jt.qt()},this.Zc=e;let t=Um();t&&typeof t.addEventListener==`function`&&t.addEventListener(`visibilitychange`,this.Yc)}get isShuttingDown(){return this.Qc}enqueueAndForget(e){this.enqueue(e)}enqueueAndForgetEvenWhileRestricted(e){this.Xc(),this.el(e)}enterRestrictedMode(e){if(!this.Qc){this.Qc=!0,this.Hc=e||!1;let t=Um();t&&typeof t.removeEventListener==`function`&&t.removeEventListener(`visibilitychange`,this.Yc)}}enqueue(e){if(this.Xc(),this.Qc)return new Promise((()=>{}));let t=new qc;return this.el((()=>this.Qc&&this.Hc?Promise.resolve():(e().then(t.resolve,t.reject),t.promise))).then((()=>t.promise))}enqueueRetryable(e){this.enqueueAndForget((()=>(this.Wc.push(e),this.tl())))}async tl(){if(this.Wc.length!==0){try{await this.Wc[0](),this.Wc.shift(),this.jt.reset()}catch(e){if(!Fl(e))throw e;M(qh,`Operation failed with retryable error: `+e)}this.Wc.length>0&&this.jt.Ut((()=>this.tl()))}}el(e){let t=this.Zc.then((()=>(this.jc=!0,e().catch((e=>{throw this.zc=e,this.jc=!1,pi(`INTERNAL UNHANDLED ERROR: `,Yh(e)),e})).then((e=>(this.jc=!1,e))))));return this.Zc=t,t}enqueueAfterDelay(e,t,n){this.Xc(),this.Jc.indexOf(e)>-1&&(t=0);let r=zm.createAndSchedule(this,e,t,n,(e=>this.nl(e)));return this.Gc.push(r),r}Xc(){this.zc&&N(47125,{rl:Yh(this.zc)})}verifyOperationInProgress(){}async il(){let e;do e=this.Zc,await e;while(e!==this.Zc)}sl(e){for(let t of this.Gc)if(t.timerId===e)return!0;return!1}_l(e){return this.il().then((()=>{this.Gc.sort(((e,t)=>e.targetTimeMs-t.targetTimeMs));for(let t of this.Gc)if(t.skipDelay(),e!==`all`&&t.timerId===e)break;return this.il()}))}ol(e){this.Jc.push(e)}nl(e){let t=this.Gc.indexOf(e);this.Gc.splice(t,1)}};function Yh(e){let t=e.message||``;return e.stack&&(t=e.stack.includes(e.message)?e.stack:e.message+`
32`+e.stack),t}var Xh=class extends Kl{constructor(e,t,n,r){super(e,t,n,r),this.type=`firestore`,this._queue=new Jh,this._persistenceKey=r?.name||`[DEFAULT]`}async _terminate(){if(this._firestoreClient){let e=this._firestoreClient.terminate();this._queue=new Jh(e),this._firestoreClient=void 0,await e}}};function Zh(e,t){let n=typeof e==`object`?e:rn(),r=typeof e==`string`?e:t||oa,i=Zt(n,`firestore`).getImmediate({identifier:r});if(!i._initialized){let e=m(`firestore`);e&&ql(i,...e)}return i}function Qh(e){if(e._terminated)throw new z(R.FAILED_PRECONDITION,`The client has already been terminated.`);return e._firestoreClient||$h(e),e._firestoreClient}function $h(e){let t=e._freezeSettings(),n=El(e._databaseId,e._app?.options.appId||``,e._persistenceKey,e._app?.options.apiKey,t);e._componentsProvider||t.localCache?._offlineComponentProvider&&t.localCache?._onlineComponentProvider&&(e._componentsProvider={_offline:t.localCache._offlineComponentProvider,_online:t.localCache._onlineComponentProvider}),e._firestoreClient=new Rh(e._authCredentials,e._appCheckCredentials,e._queue,n,e._componentsProvider&&function(e){let t=e?._online.build();return{_offline:e?._offline.build(t),_online:t}}(e._componentsProvider))}var eg=class{convertValue(e,t=`none`){switch(W(e)){case 0:return null;case 1:return e.booleanValue;case 2:return U(e.integerValue||e.doubleValue);case 3:return this.convertTimestamp(e.timestampValue);case 4:return this.convertServerTimestamp(e,t);case 5:return e.stringValue;case 6:return this.convertBytes(Zi(e.bytesValue));case 7:return this.convertReference(e.referenceValue);case 8:return this.convertGeoPoint(e.geoPointValue);case 9:return this.convertArray(e.arrayValue,t);case 11:return this.convertObject(e.mapValue,t);case 10:return this.convertVectorValue(e.mapValue);default:throw N(62114,{value:e})}}convertObject(e,t){return this.convertObjectMap(e.fields,t)}convertObjectMap(e,t=`none`){let n={};return Pi(e,((e,r)=>{n[e]=this.convertValue(r,t)})),n}convertVectorValue(e){let t=e.fields?.[va].arrayValue?.values?.map((e=>U(e.doubleValue)));return new Ql(t)}convertGeoPoint(e){return new Gc(U(e.latitude),U(e.longitude))}convertArray(e,t){return(e.values||[]).map((e=>this.convertValue(e,t)))}convertServerTimestamp(e,t){switch(t){case`previous`:let n=ra(e);return n==null?null:this.convertValue(n,t);case`estimate`:return this.convertTimestamp(ia(e));default:return null}}convertTimestamp(e){let t=Xi(e);return new Ki(t.seconds,t.nanos)}convertDocumentKey(e,t){let n=B.fromString(e);
32P(Ic(n),9688,{name:e});let r=new sa(n.get(1),n.get(3)),i=new V(n.popFirst(5));return r.isEqual(t)||pi(`Document ${i} contains a document reference within a different database (${r.projectId}/${r.database}) which is not supported. It will be treated as a reference in the current database (${t.projectId}/${t.database}) instead.`),i}},tg=class extends eg{constructor(e){super(),this.firestore=e}convertBytes(e){return new Vc(e)}convertReference(e){let t=this.convertDocumentKey(e,this.firestore._databaseId);return new Yl(this.firestore,null,t)}};function ng(e){return function(e,t){if(typeof e!=`object`||!e)return!1;let n=e;for(let e of t)if(e in n&&typeof n[e]==`function`)return!0;return!1}(e,[`next`,`error`,`complete`])}var rg=`@firebase/firestore`,ig=`4.17.0`,ag=class{constructor(e,t,n,r,i){this._firestore=e,this._userDataWriter=t,this._key=n,this._document=r,this._converter=i}get id(){return this._key.path.lastSegment()}get ref(){return new Yl(this._firestore,this._converter,this._key)}exists(){return this._document!==null}data(){if(this._document){if(this._converter){let e=new og(this._firestore,this._userDataWriter,this._key,this._document,null);return this._converter.fromFirestore(e)}return this._userDataWriter.convertValue(this._document.data.value)}}_fieldsProto(){return this._document?.data.clone().value.mapValue.fields??void 0}get(e){if(this._document){let t=this._document.data.field(fu(`DocumentSnapshot.get`,e));if(t!==null)return this._userDataWriter.convertValue(t)}}},og=class extends ag{data(){return super.data()}};function sg(e){if(e.limitType===`L`&&e.explicitOrderBy.length===0)throw new z(R.UNIMPLEMENTED,`limitToLast() queries require specifying at least one orderBy() clause`)}var cg=class{constructor(e,t){this.hasPendingWrites=e,this.fromCache=t}isEqual(e){return this.hasPendingWrites===e.hasPendingWrites&&this.fromCache===e.fromCache}},lg=class e extends ag{constructor(e,t,n,r,i,a){super(e,t,n,r,a),this._firestore=e,this._firestoreImpl=e,this.metadata=i}exists(){return super.exists()}data(e={}){if(this._document){if(this._converter){let t=new ug(this._firestore,this._userDataWriter,this._key,this._document,this.metadata,null);return this._converter.fromFirestore(t,e)}return this._userDataWriter.convertValue(this._document.data.value,e.serverTimestamps)}}get(e,t={}){if(this._document){let n=this._document.data.field(fu(`DocumentSnapshot.get`,e));if(n!==null)return this._userDataWriter.convertValue(n,t.serverTimestamps)}}toJSON(){if(this.metadata.hasPendingWrites)throw new z(R.FAILED_PRECONDITION,`DocumentSnapshot.toJSON() attempted to serialize a document with pending writes. Await waitForPendingWrites() before invoking toJSON().`);let t=this._document,n={};return n.type=e._jsonSchemaVersion,n.bundle=``,n.bundleSource=`DocumentSnapshot`,n.bundleName=this._key.toString(),!t||!t.isValidDocument()||!t.isFoundDocument()?n:(this._userDataWriter.convertObjectMap(t.data.value.mapValue.fields,`previous`),n.bundle=(this._firestore,this.ref.path,`NOT SUPPORTED`),n)}};lg._jsonSchemaVersion=`firestore/documentSnapshot/1.0`,lg._jsonSchema={type:H(`string`,lg._jsonSchemaVersion),bundleSource:H(`string`,`DocumentSnapshot`),bundleName:H(`string`),bundle:H(`string`)};var ug=class extends lg{data(e={}){return super.data(e)}},dg=class e{constructor(e,t,n,r){this._firestore=e,this._userDataWriter=t,this._snapshot=r,this.metadata=new cg(r.hasPendingWrites,r.fromCache),this.query=n}get docs(){let e=[];return this.forEach((t=>e.push(t))),e}get size(){return this._snapshot.docs.size}get empty(){return this.size===0}forEach(e,t){this._snapshot.docs.forEach((n=>{e.call(t,new ug(this._firestore,this._userDataWriter,n.key,n,new cg(this._snapshot.mutatedKeys.has(n.key),this._snapshot.fromCache),this.query.converter))}))}docChanges(e={}){let t=!!e.includeMetadataChanges;if(t&&this._snapshot.excludesMetadataChanges)throw new z(R.INVALID_ARGUMENT,`To include metadata changes with your document changes, you must also pass { includeMetadataChanges:true } to onSnapshot().`);return this._cachedChanges&&this._cachedChangesIncludeMetadataChanges===t||(this._cachedChanges=function(e,t){if(e._snapshot.oldDocs.isEmpty()){let t=0;return e._snapshot.docChanges.map((n=>{$f(e._snapshot.query)?Cp(e._snapshot.query):e.query._query;let r=new ug(e._firestore,e._userDataWriter,n.doc.key,n.doc,new cg(e._snapshot.mutatedKeys.has(n.doc.key),e._snapshot.fromCache),e.query.converter);return n.doc,{type:`added`,doc:r,oldIndex:-1,newIndex:t++}}))}{let n=e._snapshot.oldDocs;return e._snapshot.docChanges.filter((e=>t||e.type!==3)).map((t=>{let r=new ug(e._firestore,e._userDataWriter,t.doc.key,t.doc,new cg(e._snapshot.mutatedKeys.has(t.doc.key),e._snapshot.fromCache),e.query.converter),i=-1,a=-1;return t.type!==0&&(i=n.indexOf(t.doc.key),n=n.delete(t.doc.key)),t.type!==1&&(n=n.add(t.doc),a=n.indexOf(t.doc.key)),{type:fg(t.type),doc:r,oldIndex:i,newIndex:a}}))}}(this,t),this._cachedChangesIncludeMetadataChanges=t),this._cachedChanges}toJSON(){if(this.metadata.hasPendingWrites)throw new z(R.FAILED_PRECONDITION,`QuerySnapsh
32ot.toJSON() attempted to serialize a document with pending writes. Await waitForPendingWrites() before invoking toJSON().`);let t={};t.type=e._jsonSchemaVersion,t.bundleSource=`QuerySnapshot`,t.bundleName=vi.newId(),this._firestore._databaseId.database,this._firestore._databaseId.projectId;let n=[],r=[],i=[];return this.docs.forEach((e=>{e._document!==null&&(n.push(e._document),r.push(this._userDataWriter.convertObjectMap(e._document.data.value.mapValue.fields,`previous`)),i.push(e.ref.path))})),t.bundle=(this._firestore,this.query._query,t.bundleName,`NOT SUPPORTED`),t}};function fg(e){switch(e){case 0:return`added`;case 2:case 3:return`modified`;case 1:return`removed`;default:return N(61501,{type:e})}}dg._jsonSchemaVersion=`firestore/querySnapshot/1.0`,dg._jsonSchema={type:H(`string`,dg._jsonSchemaVersion),bundleSource:H(`string`,`QuerySnapshot`),bundleName:H(`string`),bundle:H(`string`)};function pg(e,t,n,...r){e=Hi(e,Yl);let i=Hi(e.firestore,Xh),a=iu(i),o;return o=typeof(t=Ae(t))==`string`||t instanceof Hc?su(a,`updateDoc`,e._key,t,n,r):ou(a,`updateDoc`,e._key,t),hg(i,[o.toMutation(e._key,uo.exists(!0))])}function mg(e,...t){e=Ae(e);let n={includeMetadataChanges:!1,source:`default`},r=0;typeof t[r]!=`object`||ng(t[r])||(n=t[r++]);let i={includeMetadataChanges:n.includeMetadataChanges,source:n.source};if(ng(t[r])){let e=t[r];t[r]=e.next?.bind(e),t[r+1]=e.error?.bind(e),t[r+2]=e.complete?.bind(e)}let a,o,s;if(e instanceof Yl)o=Hi(e.firestore,Xh),s=cs(e._key.path),a={next:n=>{t[r]&&t[r](gg(o,e,n))},error:t[r+1],complete:t[r+2]};else{let n=Hi(e,Jl);o=Hi(n.firestore,Xh),s=n._query;let i=new tg(o);a={next:e=>{t[r]&&t[r](new dg(o,i,n,e))},error:t[r+1],complete:t[r+2]},sg(e._query)}return Gh(Qh(o),s,i,a)}function hg(e,t){return Kh(Qh(e),t)}function gg(e,t,n){let r=n.docs.get(t._key);return new lg(e,new tg(e),t._key,r,new cg(n.hasPendingWrites,n.fromCache),t.converter)}(function(e,t=!0){ui(tn),y(new Ne(`firestore`,((e,{instanceIdentifier:n,options:r})=>{let i=e.getProvider(`app`).getImmediate(),a=new Xh(new Zc(e.getProvider(`auth-internal`)),new tl(i,e.getProvider(`app-check-internal`)),ca(i,n),i);return r={useFetchStreams:t,...r},a._setSettings(r),a}),`PUBLIC`).setMultipleInstances(!0)),an(rg,ig,e),an(rg,ig,`esm2020`)})();export{oe as A,ge as C,c as D,g as E,re as F,se as I,Me as L,ae as M,ce as N,Ae as O,ue as P,ve as R,xe as S,m as T,pe as _,tn as a,ke as b,y as c,an as d,_ as f,me as g,ee as h,Zh as i,je as j,ne as k,rn as l,Ne as m,pg as n,Zt as o,We as p,Zl as r,Qt as s,mg as t,nn as u,r as v,be as w,te as x,s as y,ye as z};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.