UNPKG

@spz-loader/playcanvas

Version:

.spz GaussianSplatting loader for PlayCanvas Engine

12 lines 244 kB
(function(W,p){typeof exports=="object"&&typeof module<"u"?p(exports,require("playcanvas")):typeof define=="function"&&define.amd?define(["exports","playcanvas"],p):(W=typeof globalThis<"u"?globalThis:W||self,p(W.SpzWasmPlayCanvas={},W.pc))})(this,function(W,p){"use strict";var H=typeof document<"u"?document.currentScript:null,aI=(()=>{var a=typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:H&&H.tagName.toUpperCase()==="SCRIPT"&&H.src||new URL("index.umd.cjs",document.baseURI).href;return async function(s={}){var y,E=s,J,M,r=new Promise((I,A)=>{J=I,M=A}),x=typeof window=="object",K=typeof WorkerGlobalScope<"u",X=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string"&&process.type!="renderer";if(X){const{createRequire:I}=await Promise.resolve().then(()=>NI);let A=typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:H&&H.tagName.toUpperCase()==="SCRIPT"&&H.src||new URL("index.umd.cjs",document.baseURI).href;A.startsWith("data:")&&(A="/");var gA=I(A)}var R=Object.assign({},E),NA="./this.program",q="",QA;if(X){var SI=gA("fs"),qA=gA("path");(typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:H&&H.tagName.toUpperCase()==="SCRIPT"&&H.src||new URL("index.umd.cjs",document.baseURI).href).startsWith("data:")||(q=qA.dirname(gA("url").fileURLToPath(typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:H&&H.tagName.toUpperCase()==="SCRIPT"&&H.src||new URL("index.umd.cjs",document.baseURI).href))+"/"),QA=I=>(I=cI(I)?new URL(I):qA.normalize(I),SI.readFileSync(I)),!E.thisProgram&&1<process.argv.length&&(NA=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2)}else(x||K)&&(K?q=self.location.href:typeof document<"u"&&document.currentScript&&(q=document.currentScript.src),a&&(q=a),q.startsWith("blob:")?q="":q=q.substr(0,q.replace(/[?#].*/,"").lastIndexOf("/")+1),K&&(QA=I=>{var A=new XMLHttpRequest;return A.open("GET",I,!1),A.responseType="arraybuffer",A.send(null),new Uint8Array(A.response)}));var kI=E.print||console.log.bind(console),CA=E.printErr||console.error.bind(console);Object.assign(E,R),R=null,E.thisProgram&&(NA=E.thisProgram);var dA=E.wasmBinary,EA,lA=!1,m,L,P,DA,b,N,WA,xA;function TA(){var I=EA.buffer;E.HEAP8=m=new Int8Array(I),E.HEAP16=P=new Int16Array(I),E.HEAPU8=L=new Uint8Array(I),E.HEAPU16=DA=new Uint16Array(I),E.HEAP32=b=new Int32Array(I),E.HEAPU32=N=new Uint32Array(I),E.HEAPF32=WA=new Float32Array(I),E.HEAPF64=xA=new Float64Array(I)}var pA=[],ZA=[],VA=[];function JI(){var I=E.preRun.shift();pA.unshift(I)}var Z=0,z=null;function jA(I){var A;throw(A=E.onAbort)==null||A.call(E,I),I="Aborted("+I+")",CA(I),lA=!0,I=new WebAssembly.RuntimeError(I+". Build with -sASSERTIONS for more info."),M(I),I}var LI=I=>I.startsWith("data:application/octet-stream;base64,"),cI=I=>I.startsWith("file://"),iA;function YI(){var I=iA;return Promise.resolve().then(()=>{if(I==iA&&dA)var A=new Uint8Array(dA);else{if(LI(I))if(A=I.slice(37),typeof X<"u"&&X)A=Buffer.from(A,"base64"),A=new Uint8Array(A.buffer,A.byteOffset,A.length);else{A=atob(A);for(var B=new Uint8Array(A.length),g=0;g<A.length;++g)B[g]=A.charCodeAt(g);A=B}else A=void 0;if(!A)if(QA)A=QA(I);else throw"both async and sync fetching of the wasm failed"}return A})}function tI(I,A){return YI().then(B=>WebAssembly.instantiate(B,I)).then(A,B=>{CA(`failed to asynchronously prepare wasm: ${B}`),jA(B)})}function HI(I,A){return tI(I,A)}var MA=I=>{for(;0<I.length;)I.shift()(E)},oA={},OA=I=>{for(;I.length;){var A=I.pop();I.pop()(A)}};function v(I){return this.fromWireType(N[I>>2])}var u={},V={},wA={},_,j=(I,A,B)=>{function g(D){if(D=B(D),D.length!==I.length)throw new _("Mismatched type converter count");for(var o=0;o<I.length;++o)f(I[o],D[o])}I.forEach(D=>wA[D]=A);var Q=Array(A.length),C=[],i=0;A.forEach((D,o)=>{V.hasOwnProperty(D)?Q[o]=V[D]:(C.push(D),u.hasOwnProperty(D)||(u[D]=[]),u[D].push(()=>{Q[o]=V[D],++i,i===C.length&&g(Q)}))}),C.length===0&&g(Q)},XA,c=I=>{for(var A="";L[I];)A+=XA[L[I++]];return A},G,rI=I=>{throw new G(I)};function KI(I,A,B={}){var g=A.name;if(!I)throw new G(`type "${g}" must have a positive integer typeid pointer`);if(V.hasOwnProperty(I)){if(B.sa)return;throw new G(`Cannot register type '${g}' twice`)}V[I]=A,delete wA[I],u.hasOwnProperty(I)&&(A=u[I],delete u[I],A.forEach(Q=>Q()))}function f(I,A,B={}){return KI(I,A,B)}var UA=I=>{throw new G(I.K.N.L.name+" instance already deleted")},SA=!1,bA=()=>{},uA=(I,A,B)=>A===B?I:B.R===void 0?null:(I=uA(I,A,B.R),I===null?null:B.la(I)),mA={},nI={},eI=(I,A)=>{if(A===void 0)throw new G("ptr should not be undefined");for(;I.R;)A=I.aa(A),I=I.R;return nI[A]},FA=(I,A)=>{if(!A.N||!A.M)throw new _("makeClassHandle requires ptr and ptrType");if(!!A.S!=!!A.P)throw new _("Both smartPtrType and smartPtr must be specified");return A.count={value:1},$(Object.create(I,{K:{value:A,writable:!0}}))},$=I=>typeof FinalizationRegistry>"u"?($=A=>A,I):(SA=new FinalizationRegistry(A=>{A=A.K,--A.count.value,A.count.value===0&&(A.P?A.S.U(A.P):A.N.L.U(A.M))}),$=A=>{var B=A.K;return B.P&&SA.register(A,{K:B},A),A},bA=A=>{SA.unregister(A)},$(I));function aA(){}var GA=(I,A)=>Object.defineProperty(A,"name",{value:I}),PA=(I,A,B)=>{if(I[A].O===void 0){var g=I[A];I[A]=function(...Q){if(!I[A].O.hasOwnProperty(Q.length))throw new G(`Function '${B}' called with an invalid number of arguments (${Q.length}) - expects one of (${I[A].O})!`);return I[A].O[Q.length].apply(this,Q)},I[A].O=[],I[A].O[g.Y]=g}},zA=(I,A,B)=>{if(E.hasOwnProperty(I)){if(B===void 0||E[I].O!==void 0&&E[I].O[B]!==void 0)throw new G(`Cannot register public name '${I}' twice`);if(PA(E,I,I),E[I].O.hasOwnProperty(B))throw new G(`Cannot register multiple overloads of a function with the same number of arguments (${B})!`);E[I].O[B]=A}else E[I]=A,E[I].Y=B},fI=I=>{I=I.replace(/[^a-zA-Z0-9_]/g,"$");var A=I.charCodeAt(0);return 48<=A&&57>=A?`_${I}`:I};function qI(I,A,B,g,Q,C,i,D){this.name=I,this.constructor=A,this.X=B,this.U=g,this.R=Q,this.na=C,this.aa=i,this.la=D,this.ua=[]}var kA=(I,A,B)=>{for(;A!==B;){if(!A.aa)throw new G(`Expected null or instance of ${B.name}, got an instance of ${A.name}`);I=A.aa(I),A=A.R}return I};function dI(I,A){if(A===null){if(this.ea)throw new G(`null is not a valid ${this.name}`);return 0}if(!A.K)throw new G(`Cannot pass "${HA(A)}" as a ${this.name}`);if(!A.K.M)throw new G(`Cannot pass deleted object as a pointer of type ${this.name}`);return kA(A.K.M,A.K.N.L,this.L)}function lI(I,A){if(A===null){if(this.ea)throw new G(`null is not a valid ${this.name}`);if(this.da){var B=this.fa();return I!==null&&I.push(this.U,B),B}return 0}if(!A||!A.K)throw new G(`Cannot pass "${HA(A)}" as a ${this.name}`);if(!A.K.M)throw new G(`Cannot pass deleted object as a pointer of type ${this.name}`);if(!this.ba&&A.K.N.ba)throw new G(`Cannot convert argument of type ${A.K.S?A.K.S.name:A.K.N.name} to parameter type ${this.name}`);if(B=kA(A.K.M,A.K.N.L,this.L),this.da){if(A.K.P===void 0)throw new G("Passing raw pointer to smart pointer is illegal");switch(this.za){case 0:if(A.K.S===this)B=A.K.P;else throw new G(`Cannot convert argument of type ${A.K.S?A.K.S.name:A.K.N.name} to parameter type ${this.name}`);break;case 1:B=A.K.P;break;case 2:if(A.K.S===this)B=A.K.P;else{var g=A.clone();B=this.va(B,tA(()=>g.delete())),I!==null&&I.push(this.U,B)}break;default:throw new G("Unsupporting sharing policy")}}return B}function WI(I,A){if(A===null){if(this.ea)throw new G(`null is not a valid ${this.name}`);return 0}if(!A.K)throw new G(`Cannot pass "${HA(A)}" as a ${this.name}`);if(!A.K.M)throw new G(`Cannot pass deleted object as a pointer of type ${this.name}`);if(A.K.N.ba)throw new G(`Cannot convert argument of type ${A.K.N.name} to parameter type ${this.name}`);return kA(A.K.M,A.K.N.L,this.L)}function sA(I,A,B,g,Q,C,i,D,o,w,F){this.name=I,this.L=A,this.ea=B,this.ba=g,this.da=Q,this.ta=C,this.za=i,this.ja=D,this.fa=o,this.va=w,this.U=F,Q||A.R!==void 0?this.toWireType=lI:(this.toWireType=g?dI:WI,this.T=null)}var vA=(I,A,B)=>{if(!E.hasOwnProperty(I))throw new _("Replacing nonexistent public symbol");E[I].O!==void 0&&B!==void 0?E[I].O[B]=A:(E[I]=A,E[I].Y=B)},JA,xI=(I,A,B=[])=>(I.includes("j")?(I=I.replace(/p/g,"i"),A=(0,E["dynCall_"+I])(A,...B)):A=JA.get(A)(...B),A),TI=(I,A)=>(...B)=>xI(I,A,B),e=(I,A)=>{I=c(I);var B=I.includes("j")?TI(I,A):JA.get(A);if(typeof B!="function")throw new G(`unknown function pointer with signature ${I}: ${A}`);return B},_A,$A=I=>{I=oI(I);var A=c(I);return d(I),A},RA=(I,A)=>{function B(C){Q[C]||V[C]||(wA[C]?wA[C].forEach(B):(g.push(C),Q[C]=!0))}var g=[],Q={};throw A.forEach(B),new _A(`${I}: `+g.map($A).join([", "]))},LA=(I,A)=>{for(var B=[],g=0;g<I;g++)B.push(N[A+4*g>>2]);return B};function AI(I){for(var A=1;A<I.length;++A)if(I[A]!==null&&I[A].T===void 0)return!0;return!1}function pI(I){var A=Function;if(!(A instanceof Function))throw new TypeError(`new_ called with constructor type ${typeof A} which is not a function`);var B=GA(A.name||"unknownFunctionName",function(){});return B.prototype=A.prototype,B=new B,I=A.apply(B,I),I instanceof Object?I:B}function cA(I,A,B,g,Q,C){var i=A.length;if(2>i)throw new G("argTypes array size mismatch! Must at least get return value and 'this' types!");var D=A[1]!==null&&B!==null,o=AI(A);for(B=A[0].name!=="void",g=[I,rI,g,Q,OA,A[0],A[1]],Q=0;Q<i-2;++Q)g.push(A[Q+2]);if(!o)for(Q=D?1:2;Q<A.length;++Q)A[Q].T!==null&&g.push(A[Q].T);o=AI(A),Q=A.length-2;var w=[],F=["fn"];for(D&&F.push("thisWired"),i=0;i<Q;++i)w.push(`arg${i}`),F.push(`arg${i}Wired`);w=w.join(","),F=F.join(","),w=`return function (${w}) { `,o&&(w+=`var destructors = []; `);var h=o?"destructors":"null",U="humanName throwBindingError invoker fn runDestructors retType classParam".split(" ");for(D&&(w+=`var thisWired = classParam['toWireType'](${h}, this); `),i=0;i<Q;++i)w+=`var arg${i}Wired = argType${i}['toWireType'](${h}, arg${i}); `,U.push(`argType${i}`);if(w+=(B||C?"var rv = ":"")+`invoker(${F}); `,o)w+=`runDestructors(destructors); `;else for(i=D?1:2;i<A.length;++i)C=i===1?"thisWired":"arg"+(i-2)+"Wired",A[i].T!==null&&(w+=`${C}_dtor(${C}); `,U.push(`${C}_dtor`));B&&(w+=`var ret = retType['fromWireType'](rv); return ret; `);let[k,S]=[U,w+`} `];return k.push(S),A=pI(k)(...g),GA(I,A)}var II=I=>{I=I.trim();const A=I.indexOf("(");return A!==-1?I.substr(0,A):I},YA=[],T=[],BI=I=>{9<I&&--T[I+1]===0&&(T[I]=void 0,YA.push(I))},tA=I=>{switch(I){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:const A=YA.pop()||T.length;return T[A]=I,T[A+1]=1,A}},gI={name:"emscripten::val",fromWireType:I=>{if(!I)throw new G("Cannot use deleted val. handle = "+I);var A=T[I];return BI(I),A},toWireType:(I,A)=>tA(A),V:8,readValueFromPointer:v,T:null},HA=I=>{if(I===null)return"null";var A=typeof I;return A==="object"||A==="array"||A==="function"?I.toString():""+I},ZI=(I,A)=>{switch(A){case 4:return function(B){return this.fromWireType(WA[B>>2])};case 8:return function(B){return this.fromWireType(xA[B>>3])};default:throw new TypeError(`invalid float width (${A}): ${I}`)}},VI=(I,A,B)=>{switch(A){case 1:return B?g=>m[g]:g=>L[g];case 2:return B?g=>P[g>>1]:g=>DA[g>>1];case 4:return B?g=>b[g>>2]:g=>N[g>>2];default:throw new TypeError(`invalid integer width (${A}): ${I}`)}},jI=Object.assign({optional:!0},gI),AA=(I,A,B)=>{var g=L;if(0<B){B=A+B-1;for(var Q=0;Q<I.length;++Q){var C=I.charCodeAt(Q);if(55296<=C&&57343>=C){var i=I.charCodeAt(++Q);C=65536+((C&1023)<<10)|i&1023}if(127>=C){if(A>=B)break;g[A++]=C}else{if(2047>=C){if(A+1>=B)break;g[A++]=192|C>>6}else{if(65535>=C){if(A+2>=B)break;g[A++]=224|C>>12}else{if(A+3>=B)break;g[A++]=240|C>>18,g[A++]=128|C>>12&63}g[A++]=128|C>>6&63}g[A++]=128|C&63}}g[A]=0}},QI=typeof TextDecoder<"u"?new TextDecoder:void 0,CI=(I,A=0,B=NaN)=>{var g=A+B;for(B=A;I[B]&&!(B>=g);)++B;if(16<B-A&&I.buffer&&QI)return QI.decode(I.subarray(A,B));for(g="";A<B;){var Q=I[A++];if(Q&128){var C=I[A++]&63;if((Q&224)==192)g+=String.fromCharCode((Q&31)<<6|C);else{var i=I[A++]&63;Q=(Q&240)==224?(Q&15)<<12|C<<6|i:(Q&7)<<18|C<<12|i<<6|I[A++]&63,65536>Q?g+=String.fromCharCode(Q):(Q-=65536,g+=String.fromCharCode(55296|Q>>10,56320|Q&1023))}}else g+=String.fromCharCode(Q)}return g},EI=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0,OI=(I,A)=>{for(var B=I>>1,g=B+A/2;!(B>=g)&&DA[B];)++B;if(B<<=1,32<B-I&&EI)return EI.decode(L.subarray(I,B));for(B="",g=0;!(g>=A/2);++g){var Q=P[I+2*g>>1];if(Q==0)break;B+=String.fromCharCode(Q)}return B},XI=(I,A,B)=>{if(B??(B=2147483647),2>B)return 0;B-=2;var g=A;B=B<2*I.length?B/2:I.length;for(var Q=0;Q<B;++Q)P[A>>1]=I.charCodeAt(Q),A+=2;return P[A>>1]=0,A-g},bI=I=>2*I.length,uI=(I,A)=>{for(var B=0,g="";!(B>=A/4);){var Q=b[I+4*B>>2];if(Q==0)break;++B,65536<=Q?(Q-=65536,g+=String.fromCharCode(55296|Q>>10,56320|Q&1023)):g+=String.fromCharCode(Q)}return g},mI=(I,A,B)=>{if(B??(B=2147483647),4>B)return 0;var g=A;B=g+B-4;for(var Q=0;Q<I.length;++Q){var C=I.charCodeAt(Q);if(55296<=C&&57343>=C){var i=I.charCodeAt(++Q);C=65536+((C&1023)<<10)|i&1023}if(b[A>>2]=C,A+=4,A+4>B)break}return b[A>>2]=0,A-g},PI=I=>{for(var A=0,B=0;B<I.length;++B){var g=I.charCodeAt(B);55296<=g&&57343>=g&&++B,A+=4}return A},rA={},DI=()=>{if(!KA){var I={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:NA||"./this.program"},A;for(A in rA)rA[A]===void 0?delete I[A]:I[A]=rA[A];var B=[];for(A in I)B.push(`${A}=${I[A]}`);KA=B}return KA},KA,zI=[null,[],[]];_=E.InternalError=class extends Error{constructor(I){super(I),this.name="InternalError"}};for(var iI=Array(256),yA=0;256>yA;++yA)iI[yA]=String.fromCharCode(yA);XA=iI,G=E.BindingError=class extends Error{constructor(I){super(I),this.name="BindingError"}},Object.assign(aA.prototype,{isAliasOf:function(I){if(!(this instanceof aA&&I instanceof aA))return!1;var A=this.K.N.L,B=this.K.M;I.K=I.K;var g=I.K.N.L;for(I=I.K.M;A.R;)B=A.aa(B),A=A.R;for(;g.R;)I=g.aa(I),g=g.R;return A===g&&B===I},clone:function(){if(this.K.M||UA(this),this.K.$)return this.K.count.value+=1,this;var I=$,A=Object,B=A.create,g=Object.getPrototypeOf(this),Q=this.K;return I=I(B.call(A,g,{K:{value:{count:Q.count,Z:Q.Z,$:Q.$,M:Q.M,N:Q.N,P:Q.P,S:Q.S}}})),I.K.count.value+=1,I.K.Z=!1,I},delete(){if(this.K.M||UA(this),this.K.Z&&!this.K.$)throw new G("Object already scheduled for deletion");bA(this);var I=this.K;--I.count.value,I.count.value===0&&(I.P?I.S.U(I.P):I.N.L.U(I.M)),this.K.$||(this.K.P=void 0,this.K.M=void 0)},isDeleted:function(){return!this.K.M},deleteLater:function(){if(this.K.M||UA(this),this.K.Z&&!this.K.$)throw new G("Object already scheduled for deletion");return this.K.Z=!0,this}}),Object.assign(sA.prototype,{oa(I){return this.ja&&(I=this.ja(I)),I},ha(I){var A;(A=this.U)==null||A.call(this,I)},V:8,readValueFromPointer:v,fromWireType:function(I){function A(){return this.da?FA(this.L.X,{N:this.ta,M:B,S:this,P:I}):FA(this.L.X,{N:this,M:I})}var B=this.oa(I);if(!B)return this.ha(I),null;var g=eI(this.L,B);if(g!==void 0)return g.K.count.value===0?(g.K.M=B,g.K.P=I,g.clone()):(g=g.clone(),this.ha(I),g);if(g=this.L.na(B),g=mA[g],!g)return A.call(this);g=this.ba?g.ka:g.pointerType;var Q=uA(B,this.L,g.L);return Q===null?A.call(this):this.da?FA(g.L.X,{N:g,M:Q,S:this,P:I}):FA(g.L.X,{N:g,M:Q})}}),_A=E.UnboundTypeError=((I,A)=>{var B=GA(A,function(g){this.name=A,this.message=g,g=Error(g).stack,g!==void 0&&(this.stack=this.toString()+` `+g.replace(/^Error(:[^\n]*)?\n/,""))});return B.prototype=Object.create(I.prototype),B.prototype.constructor=B,B.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},B})(Error,"UnboundTypeError"),T.push(0,1,void 0,1,null,1,!0,1,!1,1),E.count_emval_handles=()=>T.length/2-5-YA.length;var vI={u:()=>{jA("")},y:I=>{var A=oA[I];delete oA[I];var B=A.fa,g=A.U,Q=A.ia,C=Q.map(i=>i.ra).concat(Q.map(i=>i.xa));j([I],C,i=>{var D={};return Q.forEach((o,w)=>{var F=i[w],h=o.pa,U=o.qa,k=i[w+Q.length],S=o.wa,n=o.ya;D[o.ma]={read:l=>F.fromWireType(h(U,l)),write:(l,IA)=>{var t=[];S(n,l,k.toWireType(t,IA)),OA(t)}}}),[{name:A.name,fromWireType:o=>{var w={},F;for(F in D)w[F]=D[F].read(o);return g(o),w},toWireType:(o,w)=>{for(var F in D)if(!(F in w))throw new TypeError(`Missing field: "${F}"`);var h=B();for(F in D)D[F].write(h,w[F]);return o!==null&&o.push(g,h),h},V:8,readValueFromPointer:v,T:g}]})},p:()=>{},w:(I,A,B,g)=>{A=c(A),f(I,{name:A,fromWireType:function(Q){return!!Q},toWireType:function(Q,C){return C?B:g},V:8,readValueFromPointer:function(Q){return this.fromWireType(L[Q])},T:null})},i:(I,A,B,g,Q,C,i,D,o,w,F,h,U)=>{F=c(F),C=e(Q,C),D&&(D=e(i,D)),w&&(w=e(o,w)),U=e(h,U);var k=fI(F);zA(k,function(){RA(`Cannot construct ${F} due to unbound types`,[g])}),j([I,A,B],g?[g]:[],S=>{if(S=S[0],g)var n=S.L,l=n.X;else l=aA.prototype;S=GA(F,function(...eA){if(Object.getPrototypeOf(this)!==IA)throw new G("Use 'new' to construct "+F);if(t.W===void 0)throw new G(F+" has no accessible constructor");var FI=t.W[eA.length];if(FI===void 0)throw new G(`Tried to invoke ctor of ${F} with invalid number of parameters (${eA.length}) - expected (${Object.keys(t.W).toString()}) parameters instead!`);return FI.apply(this,eA)});var IA=Object.create(l,{constructor:{value:S}});S.prototype=IA;var t=new qI(F,S,IA,U,n,C,D,w);if(t.R){var BA;(BA=t.R).ga??(BA.ga=[]),t.R.ga.push(t)}return n=new sA(F,t,!0,!1,!1),BA=new sA(F+"*",t,!1,!1,!1),l=new sA(F+" const*",t,!1,!0,!1),mA[I]={pointerType:BA,ka:l},vA(k,S),[n,BA,l]})},g:(I,A,B,g,Q,C)=>{var i=LA(A,B);Q=e(g,Q),j([],[I],D=>{D=D[0];var o=`constructor ${D.name}`;if(D.L.W===void 0&&(D.L.W=[]),D.L.W[A-1]!==void 0)throw new G(`Cannot register multiple constructors with identical number of parameters (${A-1}) for class '${D.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return D.L.W[A-1]=()=>{RA(`Cannot construct ${D.name} due to unbound types`,i)},j([],i,w=>(w.splice(1,0,null),D.L.W[A-1]=cA(o,w,null,Q,C),[])),[]})},b:(I,A,B,g,Q,C,i,D,o)=>{var w=LA(B,g);A=c(A),A=II(A),C=e(Q,C),j([],[I],F=>{function h(){RA(`Cannot call ${U} due to unbound types`,w)}F=F[0];var U=`${F.name}.${A}`;A.startsWith("@@")&&(A=Symbol[A.substring(2)]),D&&F.L.ua.push(A);var k=F.L.X,S=k[A];return S===void 0||S.O===void 0&&S.className!==F.name&&S.Y===B-2?(h.Y=B-2,h.className=F.name,k[A]=h):(PA(k,A,U),k[A].O[B-2]=h),j([],w,n=>(n=cA(U,n,F,C,i,o),k[A].O===void 0?(n.Y=B-2,k[A]=n):k[A].O[B-2]=n,[])),[]})},v:I=>f(I,gI),l:(I,A,B)=>{A=c(A),f(I,{name:A,fromWireType:g=>g,toWireType:(g,Q)=>Q,V:8,readValueFromPointer:ZI(A,B),T:null})},m:(I,A,B,g,Q,C,i)=>{var D=LA(A,B);I=c(I),I=II(I),Q=e(g,Q),zA(I,function(){RA(`Cannot call ${I} due to unbound types`,D)},A-1),j([],D,o=>(o=[o[0],null].concat(o.slice(1)),vA(I,cA(I,o,null,Q,C,i),A-1),[]))},c:(I,A,B,g,Q)=>{if(A=c(A),Q===-1&&(Q=4294967295),Q=D=>D,g===0){var C=32-8*B;Q=D=>D<<C>>>C}var i=A.includes("unsigned")?function(D,o){return o>>>0}:function(D,o){return o};f(I,{name:A,fromWireType:Q,toWireType:i,V:8,readValueFromPointer:VI(A,B,g!==0),T:null})},a:(I,A,B)=>{function g(C){return new Q(m.buffer,N[C+4>>2],N[C>>2])}var Q=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][A];B=c(B),f(I,{name:B,fromWireType:g,V:8,readValueFromPointer:g},{sa:!0})},h:I=>{f(I,jI)},k:(I,A)=>{A=c(A);var B=A==="std::string";f(I,{name:A,fromWireType:function(g){var Q=N[g>>2],C=g+4;if(B)for(var i=C,D=0;D<=Q;++D){var o=C+D;if(D==Q||L[o]==0){if(i=i?CI(L,i,o-i):"",w===void 0)var w=i;else w+="\0",w+=i;i=o+1}}else{for(w=Array(Q),D=0;D<Q;++D)w[D]=String.fromCharCode(L[C+D]);w=w.join("")}return d(g),w},toWireType:function(g,Q){Q instanceof ArrayBuffer&&(Q=new Uint8Array(Q));var C,i=typeof Q=="string";if(!(i||Q instanceof Uint8Array||Q instanceof Uint8ClampedArray||Q instanceof Int8Array))throw new G("Cannot pass non-string to std::string");if(B&&i)for(var D=C=0;D<Q.length;++D){var o=Q.charCodeAt(D);127>=o?C++:2047>=o?C+=2:55296<=o&&57343>=o?(C+=4,++D):C+=3}else C=Q.length;if(D=nA(4+C+1),o=D+4,N[D>>2]=C,B&&i)AA(Q,o,C+1);else if(i)for(i=0;i<C;++i){var w=Q.charCodeAt(i);if(255<w)throw d(o),new G("String has UTF-16 code units that do not fit in 8 bits");L[o+i]=w}else for(i=0;i<C;++i)L[o+i]=Q[i];return g!==null&&g.push(d,D),D},V:8,readValueFromPointer:v,T(g){d(g)}})},e:(I,A,B)=>{if(B=c(B),A===2)var g=OI,Q=XI,C=bI,i=D=>DA[D>>1];else A===4&&(g=uI,Q=mI,C=PI,i=D=>N[D>>2]);f(I,{name:B,fromWireType:D=>{for(var o=N[D>>2],w,F=D+4,h=0;h<=o;++h){var U=D+4+h*A;(h==o||i(U)==0)&&(F=g(F,U-F),w===void 0?w=F:(w+="\0",w+=F),F=U+A)}return d(D),w},toWireType:(D,o)=>{if(typeof o!="string")throw new G(`Cannot pass non-string to C++ string type ${B}`);var w=C(o),F=nA(4+w+A);return N[F>>2]=w/A,Q(o,F+4,w+A),D!==null&&D.push(d,F),F},V:8,readValueFromPointer:v,T(D){d(D)}})},o:(I,A,B,g,Q,C)=>{oA[I]={name:c(A),fa:e(B,g),U:e(Q,C),ia:[]}},d:(I,A,B,g,Q,C,i,D,o,w)=>{oA[I].ia.push({ma:c(A),ra:B,pa:e(g,Q),qa:C,xa:i,wa:e(D,o),ya:w})},x:(I,A)=>{A=c(A),f(I,{Aa:!0,name:A,V:0,fromWireType:()=>{},toWireType:()=>{}})},n:BI,f:(I,A)=>{var B=V[I];if(B===void 0)throw I=`_emval_take_value has unknown type ${$A(I)}`,new G(I);return I=B,I=I.readValueFromPointer(A),tA(I)},q:(I,A,B,g)=>{var Q=new Date().getFullYear(),C=new Date(Q,0,1).getTimezoneOffset();Q=new Date(Q,6,1).getTimezoneOffset(),N[I>>2]=60*Math.max(C,Q),b[A>>2]=+(C!=Q),A=i=>{var D=Math.abs(i);return`UTC${0<=i?"-":"+"}${String(Math.floor(D/60)).padStart(2,"0")}${String(D%60).padStart(2,"0")}`},I=A(C),A=A(Q),Q<C?(AA(I,B,17),AA(A,g,17)):(AA(I,g,17),AA(A,B,17))},t:I=>{var A=L.length;if(I>>>=0,2147483648<I)return!1;for(var B=1;4>=B;B*=2){var g=A*(1+.2/B);g=Math.min(g,I+100663296);A:{g=(Math.min(2147483648,65536*Math.ceil(Math.max(I,g)/65536))-EA.buffer.byteLength+65535)/65536|0;try{EA.grow(g),TA();var Q=1;break A}catch{}Q=void 0}if(Q)return!0}return!1},r:(I,A)=>{var B=0;return DI().forEach((g,Q)=>{var C=A+B;for(Q=N[I+4*Q>>2]=C,C=0;C<g.length;++C)m[Q++]=g.charCodeAt(C);m[Q]=0,B+=g.length+1}),0},s:(I,A)=>{var B=DI();N[I>>2]=B.length;var g=0;return B.forEach(Q=>g+=Q.length+1),N[A>>2]=g,0},j:(I,A,B,g)=>{for(var Q=0,C=0;C<B;C++){var i=N[A>>2],D=N[A+4>>2];A+=8;for(var o=0;o<D;o++){var w=L[i+o],F=zI[I];w===0||w===10?((I===1?kI:CA)(CI(F)),F.length=0):F.push(w)}Q+=D}return N[g>>2]=Q,0}},Y=function(){var I;function A(g){var Q;return Y=g.exports,EA=Y.z,TA(),JA=Y.B,ZA.unshift(Y.A),Z--,(Q=E.monitorRunDependencies)==null||Q.call(E,Z),Z==0&&z&&(g=z,z=null,g()),Y}Z++,(I=E.monitorRunDependencies)==null||I.call(E,Z);var B={a:vI};if(E.instantiateWasm)try{return E.instantiateWasm(B,A)}catch(g){CA(`Module.instantiateWasm callback failed with error: ${g}`),M(g)}return iA??(iA="data:application/octet-stream;base64,AGFzbQEAAAAB1AM4YAF/AX9gAn9/AGABfwBgAn9/AX9gA39/fwF/YAN/f38AYAZ/f39/f38Bf2AEf39/fwBgBX9/f39/AX9gBH9/f38Bf2AGf39/f39/AGAFf39/f38AYAh/f39/f39/fwF/YAAAYAd/f39/f39/AX9gB39/f39/f38AYAV/fn5+fgBgBX9/f39+AX9gCn9/f39/f39/f38AYAABf2AFf39+f38AYAh/f39/f39/fwBgBH9+fn8AYAN/fn8BfmAKf39/f39/f39/fwF/YAd/f39/f35+AX9gBn9/f39+fgF/YAJ/fgBgA39/fwF+YAx/f39/f39/f39/f38Bf2AGf39/f35/AX9gD39/f39/f39/f39/f39/fwBgC39/f39/f39/f39/AX9gBH9/f38BfmAGf3x/f39/AX9gBX9/f398AX9gDX9/f39/f39/f39/f38AYAJ/fABgBH5+fn4Bf2ACfn8Bf2ABfwF8YAR/f39+AX5gAn5+AXxgBH9/fn4AYAN/f38BfGADf39/AX1gA39/fgBgAn5+AX1gAn9/AX5gBH9+fn4AYAN+fn4Bf2ACfH8BfGAEf39/fQF/YAl/f39/f39/f38Bf2AEf39/fQBgA39/fQAClwEZAWEBYQAFAWEBYgASAWEBYwALAWEBZAASAWEBZQAFAWEBZgADAWEBZwAKAWEBaAABAWEBaQAkAWEBagAJAWEBawABAWEBbAAFAWEBbQAVAWEBbgACAWEBbwAKAWEBcAAPAWEBcQAHAWEBcgADAWEBcwADAWEBdAAAAWEBdQANAWEBdgACAWEBdwAHAWEBeAABAWEBeQACA4wFigUAAAEDAAACAAABAQEDAxMCEAADBQIAAAIEAAACDQQBBAAAEAMFBwEWCwEABAEADQAAABADAQgAAQEBBQQDAQAAAQEBAQUABAQFAAIDGwAAAwEICAkEACUADAwHDQEAAAEBAQADAAcDAAAFAwYAAwMBAQYEJgMDAAUWAgQBAAEAAQAFAwMYBAAYAQAAAQEAAwcAAQAnAw0CCAUDBQEAAAQCCwEVAAMAAAIBAAAAAQQHAw4DAwIOCQkDCQMABQMFAQEAAAECAQMoAAQABgEKBQcDBQEcAAAABAMAAwsBAgACBB0LBB0LAQcAKQAAEAACAQIJAgUEAgAAAxsBACoDDQ0CAg0AHgYe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An9B8OQBKAIAIgdBASABdCICcUUEQEHw5AEgAiAHcjYCACAEIAM2AgBBGCEBQQgMAQsgAEEZIAFBAXZrQQAgAUEfRxt0IQEgBCgCACEEA0AgBCICKAIEQXhxIABGDQIgAUEddiEEIAFBAXQhASACIARBBHFqIgcoAhAiBA0ACyAHIAM2AhBBGCEBIAIhBEEICyEAIAMiAgwBCyACKAIIIgQgAzYCDCACIAM2AghBGCEAQQghAUEACyEHIAEgA2ogBDYCACADIAI2AgwgACADaiAHNgIAQYzlAUGM5QEoAgBBAWsiAEF/IAAbNgIACwu7CgIFfw9+IwBB4ABrIgUkACAEQv///////z+DIQwgAiAEhUKAgICAgICAgIB/gyEKIAJC////////P4MiDUIgiCEOIARCMIinQf//AXEhBwJAAkAgAkIwiKdB//8BcSIJQf//AWtBgoB+TwRAIAdB//8Ba0GBgH5LDQELIAFQIAJC////////////AIMiC0KAgICAgIDA//8AVCALQoCAgICAgMD//wBRG0UEQCACQoCAgICAgCCEIQoMAgsgA1AgBEL///////////8AgyICQoCAgICAgMD//wBUIAJCgICAgICAwP//AFEbRQRAIARCgICAgICAIIQhCiADIQEMAgsgASALQoCAgICAgMD//wCFhFAEQCACIAOEUARAQoCAgICAgOD//wAhCkIAIQEMAwsgCkKAgICAgIDA//8AhCEKQgAhAQwCCyADIAJCgICAgICAwP//AIWEUARAIAEgC4RCACEBUARAQoCAgICAgOD//wAhCgwDCyAKQoCAgICAgMD//wCEIQoMAgsgASALhFAEQEIAIQEMAgsgAiADhFAEQEIAIQEMAgsgC0L///////8/WARAIAVB0ABqIAEgDSABIA0gDVAiBht5IAZBBnStfKciBkEPaxBAQRAgBmshBiAFKQNYIg1CIIghDiAFKQNQIQELIAJC////////P1YNACAFQUBrIAMgDCADIAwgDFAiCBt5IAhBBnStfKciCEEPaxBAIAYgCGtBEGohBiAFKQNIIQwgBSkDQCEDCyADQg+GIgtCgID+/w+DIgIgAUIgiCIEfiIQIAtCIIgiEyABQv////8PgyIBfnwiD0IghiIRIAEgAn58IgsgEVStIAIgDUL/////D4MiDX4iFSAEIBN+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IgMkACADIAE2AgwgACADQQxqEI0BIgBBBGogAhCNARogA0EQaiQAIAALCgAgACgCABCzAwsLACAAKAIAELgDwAs7AQJ/IwBBEGsiASQAIAEgADYCDCABKAIMIgAoAgAiAgRAIAAgAjYCBCAAKAIIGiACECgLIAFBEGokAAsGABCuAQALLQAgAkUEQCAAKAIEIAEoAgRGDwsgACABRgRAQQEPCyAAKAIEIAEoAgQQ0AFFCyQBAX8gACgCACECIAAgATYCACACBEAgAiAAEJkBKAIAEQIACwspAQF/IAIEQCAAIQMDQCADIAE6AAAgA0EBaiEDIAJBAWsiAg0ACwsgAAsNACAAKAIAELIDGiAACw0AIAAoAgAQmwIaIAALdQEBfiAAIAEgBH4gAiADfnwgA0IgiCICIAFCIIgiBH58IANC/////w+DIgMgAUL/////D4MiAX4iBUIgiCADIAR+fCIDQiCIfCABIAJ+IANC/////w+DfCIBQiCIfDcDCCAAIAVC/////w+DIAFCIIaENwMACxEAIAAgASAAKAIAKAIcEQMAC8EBAQN/IAAtAABBIHFFBEACQCAAKAIQIgMEfyADBSAAEOABDQEgACgCEAsgACgCFCIEayACSQRAIAAgASACIAAoAiQRBAAaDAELAkACQCACRSAAKAJQQQBIcg0AIAIhAwNAIAEgA2oiBUEBay0AAEEKRwRAIANBAWsiAw0BDAILCyAAIAEgAyAAKAIkEQQAIANJDQIgAiADayECIAAoAhQhBAwBCyABIQULIAQgBSACEEQaIAAgACgCFCACajYCFAsLC6EBAQJ/AkAgABAZRSACIAFrQQVIcg0AIAEgAhDFASACQQRrIQQgABAdIgIgABAZaiEFAkADQAJAIAIsAAAhACABIARPDQAgAEEATCAAQf8ATnJFBEAgASgCACACLAAARw0DCyABQQRqIQEgAiAFIAJrQQFKaiECDAELCyAAQQBMIABB/wBOcg0BIAIsAAAgBCgCAEEBa0sNAQsgA0EENgIACws8ACAALAALQQBIBEAgACgCCBogACgCABAoCyAAIAEpAgA3AgAgACABKAIINgIIIAFBADoACyABQQA6AAALUAEBfgJAIANBwABxBEAgASADQUBqrYYhAkIAIQEMAQsgA0UNACACIAOtIgSGIAFBwAAgA2utiIQhAiABIASGIQELIAAgATcDACAAIAI3AwgLaQEBfyMAQYACayIFJAAgBEGAwARxIAIgA0xyRQRAIAUgASACIANrIgNBgAIgA0GAAkkiARsQOBogAUUEQANAIAAgBUGAAhA9IANBgAJrIgNB/wFLDQALCyAAIAUgAxA9CyAFQYACaiQACwkAIAAgATYCBAsEAEEACzMBAX8gAgRAIAAhAwNAIAMgAS0AADoAACADQQFqIQMgAUEBaiEBIAJBAWsiAg0ACwsgAAsRACAAIAEgASgCACgCFBEBAAsPACAAIAAoAgAoAhARAAALBQAQNQALCgAgAC0AC0EHdgsKACAAQajtARB/CwoAIABBsO0BEH8LyQkCBH8EfiMAQfAAayIGJAAgBEL///////////8AgyEJAkACQCABUCIFIAJC////////////AIMiCkKAgICAgIDA//8AfUKAgICAgIDAgIB/VCAKUBtFBEAgA0IAUiAJQoCAgICAgMD//wB9IgtCgICAgICAwICAf1YgC0KAgICAgIDAgIB/URsNAQsgBSAKQoCAgICAgMD//wBUIApCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhBCABIQMMAgsgA1AgCUKAgICAgIDA//8AVCAJQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQQMAgsgASAKQoCAgICAgMD//wCFhFAEQEKAgICAgIDg//8AIAIgASADhSACIASFQoCAgICAgICAgH+FhFAiBRshBEIAIAEgBRshAwwCCyADIAlCgICAgICAwP//AIWEUA0BIAEgCoRQBEAgAyAJhEIAUg0CIAEgA4MhAyACIASDIQQMAgsgAyAJhFBFDQAgASEDIAIhBAwBCyADIAEgASADVCAJIApWIAkgClEbIggbIQogBCACIAgbIgxC////////P4MhCSACIAQgCBsiC0IwiKdB//8BcSEHIAxCMIinQf//AXEiBUUEQCAGQeAAaiAKIAkgCiAJIAlQIgUbeSAFQQZ0rXynIgVBD2sQQCAGKQNoIQkgBikDYCEKQRAgBWshBQsgASADIAgbIQMgC0L///////8/gyEBIAcEfiABBSAGQdAAaiADIAEgAyABIAFQIgcbeSAHQQZ0rXynIgdBD2sQQEEQIAdrIQcgBikDUCEDIAYpA1gLQgOGIANCPYiEQoCAgICA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AXFBAnRBsDBqKAIAIANBCHZzIQMLIANBf3MLC+UDAQV/IwBBEGsiAyQAIAMgACgCACIEQQhrKAIAIgI2AgwgAyAAIAJqNgIEIAMgBEEEaygCADYCCCADKAIIIgQgAUEAEDYhAiADKAIEIQUCQCACBEAgAygCDCEAIwBBQGoiASQAIAFBQGskAEEAIAUgABshAgwBCyMAQUBqIgIkACAAIAVOBEAgAkIANwIcIAJCADcCJCACQgA3AiwgAkIANwIUIAJBADYCECACIAE2AgwgAiAENgIEIAJBADYCPCACQoGAgICAgICAATcCNCACIAA2AgggBCACQQRqIAUgBUEBQQAgBCgCACgCFBEKACAAQQAgAigCHBshBgsgAkFAayQAIAYiAg0AIwBBQGoiAiQAIAJBADYCECACQfDSATYCDCACIAA2AgggAiABNgIEQQAhACACQRRqQQBBJxA4GiACQQA2AjwgAkEBOgA7IAQgAkEEaiAFQQFBACAEKAIAKAIYEQsAAkACQAJAIAIoAigOAgABAgsgAigCGEEAIAIoAiRBAUYbQQAgAigCIEEBRhtBACACKAIsQQFGGyEADAELIAIoAhxBAUcEQCACKAIsDQEgAigCIEEBRw0BIAIoAiRBAUcNAQsgAigCFCEACyACQUBrJAAgACECCyADQRBqJAAgAgsHACAAEB4aCw8AIAAgACgCACgCDBEAAAsHACAAEBlFCxEAIAAgASABKAIAKAIcEQEACxEAIAAgASABKAIAKAIYEQEACy4AIAAgACgCCEGAgICAeHEgAUH/////B3FyNgIIIAAgACgCCEGAgICAeHI2AggLCQAgACABNgIACwsAIAAgASACENQBCwsAIAAtAAtB/wBxCxMAIAAgASACIAAoAgAoAgwRBAALIwEBfyACQQBOBH8gACgCCCACQQJ0aigCACABcUEARwVBAAsLfAECfyMAQRBrIgQkACMAQSBrIgMkACADQRhqIAEgASACahDWASADQRBqIAMoAhggAygCHCAAEKsDIAMgASADKAIQENUBNgIMIAMgACADKAIUEI4BNgIIIARBCGogA0EMaiADQQhqEF0gA0EgaiQAIAQoAgwaIARBEGokAAvsAQEDfyAARQRAQdjaASgCAARAQdjaASgCABBiIQELQZjbASgCAARAQZjbASgCABBiIAFyIQELQaDbASgCACIABEADQCAAKAJMGiAAKAIUIAAoAhxHBEAgABBiIAFyIQELIAAoAjgiAA0ACwsgAQ8LIAAoAkxBAEghAgJAAkAgACgCFCAAKAIcRg0AIABBAEEAIAAoAiQRBAAaIAAoAhQNAEF/IQEMAQsgACgCBCIBIAAoAggiA0cEQCAAIAEgA2usQQEgACgCKBEXABoLQQAhASAAQQA2AhwgAEIANwMQIABCADcCBCACDQALIAELEgAgACgCACIABEAgABCKAxoLCxEAIAAgASgCABCKAzYCACAAC0EBAX8gACABNwNwIAAgACgCLCAAKAIEIgJrrDcDeCAAIAFQIAEgACgCCCIAIAJrrFlyBH8gAAUgAiABp2oLNgJoCzsBAn9BASAAIABBAU0bIQEDQAJAIAEQLyIADQBBvPkBKAIAIgJFDQAgAhENAAwBCwsgAEUEQBBHCyAACxQBAX9BBBBmIgEgACgCADYCACABCwsAIAAgATYCACAAC34BAn8jAEEQayICJAAgABBIBEAgACgCACAAEIEBGhCvAQsgARAZGiABEEghAyAAIAEoAgg2AgggACABKQIANwIAIAFBABBSIAJBADYCDCABIAJBDGoQTQJAIAAgAUYiASADckUNAAsgABBIIAFyRQRAIAAQXhoLIAJBEGokAAu1AQECfyMAQRBrIgUkACAFIAE2AgxBACEBAkAgAgJ/QQYgACAFQQxqECUNABpBBCADQcAAIAAQMiIGEF9FDQAaIAMgBhCbASEBA0ACQCAAEDkaIAFBMGshASAAIAVBDGoQJSAEQQJIcg0AIANBwAAgABAyIgYQX0UNAyAEQQFrIQQgAyAGEJsBIAFBCmxqIQEMAQsLIAAgBUEMahAlRQ0BQQILIAIoAgByNgIACyAFQRBqJAAgAQu1AQECfyMAQRBrIgUkACAFIAE2AgxBACEBAkAgAgJ/QQYgACAFQQxqECYNABpBBCADQcAAIAAQMyIGEGBFDQAaIAMgBhCcASEBA0ACQCAAEDoaIAFBMGshASAAIAVBDGoQJiAEQQJIcg0AIANBwAAgABAzIgYQYEUNAyAEQQFrIQQgAyAGEJwBIAFBCmxqIQEMAQsLIAAgBUEMahAmRQ0BQQILIAIoAgByNgIACyAFQRBqJAAgAQuVAQEDfyMAQRBrIgQkACAEIAE2AgwgBCADNgIIIARBBGogBEEMahBkIAQoAgghAyMAQRBrIgEkACABIAM2AgwgASADNgIIQX8hBQJAQQBBACACIAMQzwEiA0EASA0AIAAgA0EBaiIDEC8iADYCACAARQ0AIAAgAyACIAEoAgwQzwEhBQsgAUEQaiQAEGMgBEEQaiQAIAULYwAgAigCBEGwAXEiAkEgRgRAIAEPCwJAIAJBEEcNAAJAAkAgAC0AACICQStrDgMAAQABCyAAQQFqDwsgAkEwRyABIABrQQJIcg0AIAAtAAFBIHJB+ABHDQAgAEECaiEACyAACy4AAkAgACgCBEHKAHEiAARAIABBwABGBEBBCA8LIABBCEcNAUEQDwtBAA8LQQoL4gECBH4CfyMAQRBrIgYkACABvSIFQv////////8HgyECIAACfiAFQjSIQv8PgyIDUEUEQCADQv8PUgRAIAJCBIghBCADQoD4AHwhAyACQjyGDAILIAJCBIghBEL//wEhAyACQjyGDAELIAJQBEBCACEDQgAMAQsgBiACQgAgBadnQSByIAJCIIinZyACQoCAgIAQVBsiB0ExahBAQYz4ACAHa60hAyAGKQMIQoCAgICAgMAAhSEEIAYpAwALNwMAIAAgBUKAgICAgICAgIB/gyADQjCGhCAEhDcDCCAGQRBqJAALEAAgACgCBCAAKAIAa0ECdQuyAwEDfyMAQRBrIggkACAIIAI2AgggCCABNgIMIAhBBGoiASADECIgARBJIQkgARAfIARBADYCAEEAIQECQANAIAYgB0YgAXINAQJAIAhBDGogCEEIahAlDQACQCAJIAYoAgAQmwFBJUYEQCAGQQRqIAdGDQJBACECAn8CQCAJIAYoAgQQmwEiAUHFAEYNAEEEIQogAUH/AXFBMEYNACABDAELIAZBCGogB0YNA0EIIQogASECIAkgBigCCBCbAQshASAIIAAgCCgCDCAIKAIIIAMgBCAFIAEgAiAAKAIAKAIkEQwANgIMIAYgCmpBBGohBgwBCyAJQQEgBigCABBfBEADQCAHIAZBBGoiBkcEQCAJQQEgBigCABBfDQELCwNAIAhBDGoiASAIQQhqECUNAiAJQQEgARAyEF9FDQIgARA5GgwACwALIAkgCEEMaiIBEDIQPCAJIAYoAgAQPEYEQCAGQQRqIQYgARA5GgwBCyAEQQQ2AgALIAQoAgAhAQwBCwsgBEEENgIACyAIQQxqIAhBCGoQJQRAIAQgBCgCAEECcjYCAAsgCCgCDCAIQRBqJAALtAMBA38jAEEQayIIJAAgCCACNgIIIAggATYCDCAIQQRqIgEgAxAiIAEQSiEJIAEQHyAEQQA2AgBBACEBAkADQCAGIAdGIAFyDQECQCAIQQxqIAhBCGoQJg0AAkAgCSAGLAAAEJwBQSVGBEAgBkEBaiAHRg0CQQAhAgJ/AkAgCSAGLAABEJwBIgFBxQBGDQBBASEKIAFB/wFxQTBGDQAgAQwBCyAGQQJqIAdGDQNBAiEKIAEhAiAJIAYsAAIQnAELIQEgCCAAIAgoAgwgCCgCCCADIAQgBSABIAIgACgCACgCJBEMADYCDCAGIApqQQFqIQYMAQsgCUEBIAYsAAAQYARAA0AgByAGQQFqIgZHBEAgCUEBIAYsAAAQYA0BCwsDQCAIQQxqIgEgCEEIahAmDQIgCUEBIAEQMxBgRQ0CIAEQOhoMAAsACyAJIAhBDGoiARAzEMsBIAkgBiwAABDLAUYEQCAGQQFqIQYgARA6GgwBCyAEQQQ2AgALIAQoAgAhAQwBCwsgBEEENgIACyAIQQxqIAhBCGoQJgRAIAQgBCgCAEECcjYCAAsgCCgCDCAIQRBqJAALFgAgACABIAIgAyAAKAIAKAIwEQkAGgvPAQEBfwJAQZTaASgCACIAQQBOBEAgAEUNAUH02wEoAgAgAEH/////A3FHDQELAkBBmNoBKAIAQQpGDQBB3Nk