@iden3/js-iden3-core
Version:
Low level API to create and manipulate iden3 Claims.
4 lines (3 loc) • 1.24 MB
JavaScript
var Iden3Core = (function (exports) {
'use strict';
var mI=Object.defineProperty;var XI=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(I,E)=>(typeof require<"u"?require:I)[E]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var aI=(t,I)=>{for(var E in I)mI(t,E,{get:I[E],enumerable:true});};function Z(t){let I=globalThis;if(I.crypto?.getRandomValues){let E=new Uint8Array(t);return I.crypto.getRandomValues(E),E}try{return XI("node:crypto").randomBytes(t)}catch{throw new Error("Random byte generation is not supported in this environment")}}var B={};aI(B,{abs:()=>cE,add:()=>sE,bXor:()=>LE,band:()=>lI,bitLength:()=>p,bits:()=>KI,bor:()=>CE,div:()=>X,e:()=>jI,eq:()=>nE,exp:()=>DE,fromArray:()=>_I,fromRprBE:()=>CI,fromRprLE:()=>gI,fromString:()=>N,geq:()=>gE,gt:()=>HE,isNegative:()=>$I,isOdd:()=>JI,isZero:()=>eI,land:()=>FE,leq:()=>rE,lor:()=>BE,lt:()=>KE,mod:()=>eE,mul:()=>oE,naf:()=>uI,neg:()=>AE,neq:()=>JE,one:()=>M,pow:()=>HI,shiftLeft:()=>xI,shiftRight:()=>nI,shl:()=>IE,shr:()=>EE,square:()=>GE,sub:()=>m,toArray:()=>tE,toLEBuff:()=>wE,toNumber:()=>yI,toRprBE:()=>rI,toRprLE:()=>z,toString:()=>iE,zero:()=>q});var zI=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4],N=(t,I)=>{if(!I||I===10)return BigInt(t);if(I===16)return t.slice(0,2)==="0x"?BigInt(t):BigInt(`0x${t}`);throw new Error("Unsupported radix")},jI=N,_I=(t,I)=>{let E=BigInt(0),s=BigInt(I);for(let A=0;A<t.length;A++)E=E*s+BigInt(t[A]);return E},p=t=>{let I=t.toString(16);return (I.length-1)*4+zI[parseInt(I[0],16)]},$I=t=>BigInt(t)<BigInt(0),eI=t=>t===q,xI=(t,I)=>t<<I,nI=(t,I)=>t>>I,IE=xI,EE=nI,JI=t=>(t&M)===M,uI=t=>{let I=t,E=[];for(;I;){if(I&M){let s=2-Number(I%BigInt(4));E.push(s),I=I-BigInt(s);}else E.push(0);I=I>>M;}return E},KI=t=>{let I=t,E=[];for(;I;)I&M?E.push(1):E.push(0),I=I>>M;return E},yI=t=>{if(t>BigInt(Number.MAX_SAFE_INTEGER))throw new Error("Number too big");return Number(t)},tE=(t,I)=>{let E=[],s=t,A=I;for(;s;)E.unshift(Number(s%A)),s=s/A;return E},sE=(t,I)=>t+I,m=(t,I)=>t-I,AE=t=>-t,oE=(t,I)=>t*I,GE=t=>t*t,HI=(t,I)=>t**I,DE=(t,I)=>t**I,cE=t=>t>=0?t:-t,X=(t,I)=>t/I,eE=(t,I)=>t%I,nE=(t,I)=>t===I,JE=(t,I)=>t!==I,KE=(t,I)=>t<I,HE=(t,I)=>t>I,rE=(t,I)=>t<=I,gE=(t,I)=>t>=I,lI=(t,I)=>t&I,CE=(t,I)=>t|I,LE=(t,I)=>t^I,FE=(t,I)=>t&&I,BE=(t,I)=>t||I,z=(t,I,E,s)=>{let A=`0000000${E.toString(16)}`,o=new Uint32Array(t.buffer,t.byteOffset+I,s/4),G=((A.length-7)*4-1>>5)+1;for(let D=0;D<G;D++)o[D]=parseInt(A.substring(A.length-8*D-8,A.length-8*D),16);for(let D=G;D<o.length;D++)o[D]=0;for(let D=o.length*4;D<s;D++)t[D]=yI(lI(nI(E,BigInt(D*8)),BigInt(255)));},rI=(t,I,E,s)=>{let A=`0000000${E.toString(16)}`,o=new DataView(t.buffer,t.byteOffset+I,s),G=((A.length-7)*4-1>>5)+1;for(let D=0;D<G;D++)o.setUint32(s-D*4-4,parseInt(A.substring(A.length-8*D-8,A.length-8*D),16),false);for(let D=0;D<s/4-G;D++)o.setInt32(0,0,false);},gI=(t,I,E)=>{E=E||t.byteLength,I=I||0;let s=new Uint32Array(t.buffer,t.byteOffset+I,E/4),A=new Array(E/4);return s.forEach((o,G)=>{A[A.length-G-1]=o.toString(16).padStart(8,"0");}),N(A.join(""),16)},CI=(t,I,E)=>{E=E||t.byteLength,I=I||0;let s=new DataView(t.buffer,t.byteOffset+I,E),A=new Array(E/4);for(let o=0;o<E/4;o++)A[o]=s.getUint32(o*4,false).toString(16).padStart(8,"0");return N(A.join(""),16)},iE=(t,I=10)=>t.toString(I),wE=t=>{let I=new Uint8Array(Math.floor((p(t)-1)/8)+1);return z(I,0,t,I.byteLength),I},q=BigInt(0),M=BigInt(1);var Y=class{type;one;zero;p;m;negOne;two;half;bitLength;mask;n64;n32;n8;R;s;shift;Ri;nqr;t;nqr_to_t;k;constructor(I){this.type="F1",this.one=BigInt(1),this.zero=BigInt(0),this.p=BigInt(I),this.m=M,this.negOne=this.p-this.one,this.two=BigInt(2),this.half=this.p>>this.one,this.bitLength=p(this.p),this.mask=(this.one<<BigInt(this.bitLength))-this.one,this.n64=Math.floor((this.bitLength-1)/64)+1,this.n32=this.n64*2,this.n8=this.n64*8,this.R=this.e(this.one<<BigInt(this.n64*64)),this.Ri=this.inv(this.R);let E=this.negOne>>this.one;this.nqr=this.two;let s=this.pow(this.nqr,E);for(;!this.eq(s,this.negOne);)this.nqr=this.nqr+this.one,s=this.pow(this.nqr,E);for(this.s=0,this.t=this.negOne;(this.t&this.one)===this.zero;)this.s=this.s+1,this.t=this.t>>this.one;this.nqr_to_t=this.pow(this.nqr,this.t),ME(this),this.shift=this.square(this.nqr),this.k=this.exp(this.nqr,BigInt(2**this.s));}e(I,E=void 0){let s;if(E?E===BigInt(16)&&(s=BigInt(`0x${I}`)):s=BigInt(I),s<0){let A=-s;return A>=this.p&&(A=A%this.p),this.p-A}else return s>=this.p?s%this.p:s}add(I,E){let s=I+E;return s>=this.p?s-this.p:s}sub(I,E){return I>=E?I-E:this.p-E+I}neg(I){return I&&this.p-I}double(I){return this.add(I,I)}mul(I,E){return I*E%this.p}mulScalar(I,E){return I*this.e(E)%this.p}square(I){return I*I%this.p}eq(I,E){return I===E}neq(I,E){return I!==E}lt(I,E){let s=I>this.half?I-this.p:I,A=E>this.half?E-this.p:E;return s<A}gt(I,E){let s=I>this.half?I-this.p:I,A=E>this.half?E-this.p:E;return s>A}leq(I,E){let s=I>this.half?I-this.p:I,A=E>this.half?E-this.p:E;return s<=A}geq(I,E){let s=I>this.half?I-this.p:I,A=E>this.half?E-this.p:E;return s>=A}div(I,E){return this.mul(I,this.inv(E))}iDiv(I,E){if(!E)throw new Error("Division by zero");return I/E}inv(I){if(!I)throw new Error("Division by zero");let E=this.zero,s=this.p,A=this.one,o=I%this.p;for(;o;){let G=s/o;[E,A]=[A,E-G*A],[s,o]=[o,s-G*o];}return E<this.zero&&(E+=this.p),E}mod(I,E){return I%E}pow(I,E){return vI(this,I,E)}exp(I,E){return vI(this,I,BigInt(E))}band(I,E){let s=I&E&this.mask;return s>=this.p?s-this.p:s}bor(I,E){let s=(I|E)&this.mask;return s>=this.p?s-this.p:s}bXor(I,E){let s=(I^E)&this.mask;return s>=this.p?s-this.p:s}bNot(I){let E=I^this.mask;return E>=this.p?E-this.p:E}shl(I,E){if(Number(E)<this.bitLength){let s=I<<E&this.mask;return s>=this.p?s-this.p:s}else {let s=this.p-E;return Number(s)<this.bitLength?I>>s:this.zero}}shr(I,E){if(Number(E)<this.bitLength)return I>>E;{let s=this.p-E;if(Number(s)<this.bitLength){let A=I<<s&this.mask;return A>=this.p?A-this.p:A}else return q}}land(I,E){return I&&E?this.one:this.zero}lor(I,E){return I||E?this.one:this.zero}sqrt_old(I){if(I===this.zero)return this.zero;if(this.pow(I,this.negOne>>this.one)!==this.one)return null;let s=this.s,A=this.nqr_to_t,o=this.pow(I,this.t),G=this.pow(I,this.add(this.t,this.one)>>this.one);for(;o!==this.one;){let D=this.square(o),K=1;for(;D!==this.one;)K++,D=this.square(D);let c=A;for(let n=0;n<s-K-1;n++)c=this.square(c);s=K,A=this.square(c),o=this.mul(o,A),G=this.mul(G,c);}return G>this.p>>this.one&&(G=this.neg(G)),G}normalize(I){if(I<0){let E=-I;return E>=this.p&&(E=E%this.p),this.p-E}else return I>=this.p?I%this.p:I}random(){let I=this.bitLength*2/8,E=this.zero;for(let s=0;s<I;s++)E=(E<<BigInt(8))+BigInt(Z(1)[0]);return E%this.p}toString(I,E=10){E=E||10;let s;return I>this.half&&E===10?s=`-${(this.p-I).toString(E)}`:s=I.toString(E),s}isZero(I){return I===this.zero}toRprLE(I,E,s){z(I,E,s,this.n64*8);}toRprBE(I,E,s){rI(I,E,s,this.n64*8);}toRprBEM(I,E,s){return this.toRprBE(I,E,this.mul(this.R,s))}toRprLEM(I,E,s){return this.toRprLE(I,E,this.mul(this.R,s))}fromRprLE(I,E){return gI(I,E,this.n8)}fromRprBE(I,E){return CI(I,E,this.n8)}fromRprLEM(I,E){return this.mul(this.fromRprLE(I,E),this.Ri)}fromRprBEM(I,E){return this.mul(this.fromRprBE(I,E),this.Ri)}toObject(I){return I}sqrt(I){throw new Error(`Not implemented sqrt for F1${I}`)}sqrt_e1;sqrt_q;sqrt_s;sqrt_t;sqrt_z;sqrt_tm1d2};function ME(t){for(t.sqrt_q=HI(t.p,t.m),t.sqrt_s=q,t.sqrt_t=m(t.sqrt_q,M);!JI(t.sqrt_t);)t.sqrt_s=t.sqrt_s+M,t.sqrt_t=X(t.sqrt_t,2n);let I=t.one;for(;t.eq(I,t.one);){let E=t.random();t.sqrt_z=t.pow(E,t.sqrt_t),I=t.pow(t.sqrt_z,2n**(t.sqrt_s-M));}t.sqrt_tm1d2=X(m(t.sqrt_t,M),2n),t.sqrt=E=>{if(t.isZero(E))return t.zero;let s=t.pow(E,t.sqrt_tm1d2),A=t.pow(t.mul(t.square(s),E),2n**(t.sqrt_s-M));if(t.eq(A,t.negOne))return null;let o=t.sqrt_s,G=t.mul(E,s),D=t.mul(G,s),K=t.sqrt_z;for(;!t.eq(D,t.one);){let c=t.square(D),n=M;for(;!t.eq(c,t.one);)c=t.square(c),n++;s=K;for(let e=0;e<o-n-M;e++)s=t.square(s);K=t.square(s),D=t.mul(D,K),G=t.mul(G,s),o=n;}return t.geq(G,t.zero)?G:t.neg(G)};}function vI(t,I,E){if(eI(E))return t.one;let s=KI(E);if(s.length===0)return t.one;let A=I;for(let o=s.length-2;o>=0;o--)A=t.square(A),s[o]&&(A=t.mul(A,I));return A}var U={};aI(U,{beBuff2int:()=>UE,beInt2Buff:()=>kE,leBuff2int:()=>fE,leInt2Buff:()=>bE,unStringifyBigInts:()=>LI});function LI(t){if(Array.isArray(t))return t.map(LI);if(typeof t=="object"){let s={};for(let[A,o]of Object.entries(t))s[A]=LI(o);return s}let E=[...Uint8Array.from(atob(t),s=>s.charCodeAt(0))].map(s=>s.toString(16).padStart(2,"0")).join("");return BigInt(`0x${E}`)}function UE(t){let I=BigInt(0),E=t.length,s=0,A=new DataView(t.buffer,t.byteOffset,t.byteLength);for(;E>0;)E>=4?(E-=4,I+=BigInt(A.getUint32(E))<<BigInt(s*8),s+=4):E>=2?(E-=2,I+=BigInt(A.getUint16(E))<<BigInt(s*8),s+=2):(E-=1,I+=BigInt(A.getUint8(E))<<BigInt(s*8),s+=1);return I}function kE(t,I){let E=t,s=new Uint8Array(I),A=new DataView(s.buffer),o=I;for(;o>0;)o-4>=0?(o-=4,A.setUint32(o,Number(E&BigInt(4294967295))),E=E>>BigInt(32)):o-2>=0?(o-=2,A.setUint16(o,Number(E&BigInt(65535))),E=E>>BigInt(16)):(o-=1,A.setUint8(o,Number(E&BigInt(255))),E=E>>BigInt(8));if(E)throw new Error("Number does not fit in this length");return s}function fE(t){let I=BigInt(0),E=0,s=new DataView(t.buffer,t.byteOffset,t.byteLength);for(;E<t.length;)E+4<=t.length?(I+=BigInt(s.getUint32(E,true))<<BigInt(E*8),E+=4):E+2<=t.length?(I+=BigInt(s.getUint16(E,true))<<BigInt(E*8),E+=2):(I+=BigInt(s.getUint8(E))<<BigInt(E*8),E+=1);return I}function bE(t,I){let E=t;typeof I>"u"&&(I=Math.floor((p(t)-1)/8)+1,I===0&&(I=1));let s=new Uint8Array(I),A=new DataView(s.buffer),o=0;for(;o<I;)o+4<=I?(A.setUint32(o,Number(E&BigInt(4294967295)),true),o+=4,E=E>>BigInt(32)):o+2<=I?(A.setUint16(o,Number(E&BigInt(65535)),true),o+=2,E=E>>BigInt(16)):(A.setUint8(o,Number(E&BigInt(255))),o+=1,E=E>>BigInt(8));if(E)throw new Error("Number does not fit in this length");return s}var j=class{F;p;pm1d2;Generator;Base8;order;subOrder;A;D;constructor(I){this.F=I,this.p=BigInt("21888242871839275222246405745257275088548364400416034343698204186575808495617"),this.pm1d2=B.div(B.sub(this.p,B.one),2n),this.Generator=[I.e("995203441582195749578291179787384436505546430278305826713579947235728471134"),I.e("5472060717959818805561601436314318772137091100104008585924551046643952123905")],this.Base8=[I.e("5299619240641551281634865583518297030282874472190772894086521144482721001553"),I.e("16950150798460657717958625567821834550301663161624707787222815936182638968203")],this.order=BigInt("21888242871839275222246405745257275088614511777268538073601725287587578984328"),this.subOrder=B.shiftRight(this.order,3n),this.A=I.e("168700"),this.D=I.e("168696");}addPoint(I,E){let s=this.F,A=new Array(2),o=s.mul(I[0],E[1]),G=s.mul(I[1],E[0]),D=s.mul(s.sub(I[1],s.mul(this.A,I[0])),s.add(E[0],E[1])),K=s.mul(o,G),c=s.mul(this.D,K);return A[0]=s.div(s.add(o,G),s.add(s.one,c)),A[1]=s.div(s.add(D,s.sub(s.mul(this.A,o),G)),s.sub(s.one,c)),A}mulPointEScalar(I,E){let s=this.F,A=[s.e("0"),s.e("1")],o=E,G=I;for(;!B.isZero(o);)B.isOdd(o)&&(A=this.addPoint(A,G)),G=this.addPoint(G,G),o=B.shiftRight(o,B.one);return A}inSubgroup(I){let E=this.F;if(!this.inCurve(I))return false;let s=this.mulPointEScalar(I,this.subOrder);return E.isZero(s[0])&&E.eq(s[1],E.one)}inCurve(I){let E=this.F,s=E.square(I[0]),A=E.square(I[1]);return !!E.eq(E.add(E.mul(this.A,s),A),E.add(E.one,E.mul(E.mul(s,A),this.D)))}packPoint(I){let E=this.F,s=new Uint8Array(32);E.toRprLE(s,0,I[1]);let A=E.toObject(I[0]);return B.gt(A,this.pm1d2)&&(s[31]=s[31]|128),s}unpackPoint(I){let E=this.F,s=false,A=[BigInt(0),BigInt(0)];if(I[31]&128&&(s=true,I[31]=I[31]&127),A[1]=E.fromRprLE(I,0),B.gt(E.toObject(A[1]),this.p))return null;let o=E.square(A[1]),G=E.div(E.sub(E.one,o),E.sub(this.A,E.mul(this.D,o))),D=E.exp(G,BigInt(E.half));if(!E.eq(E.one,D))return null;let K=E.sqrt(G);return K==null?null:(s&&(K=E.neg(K)),A[0]=BigInt(K),A)}},QE=new Y(BigInt("21888242871839275222246405745257275088548364400416034343698204186575808495617"));new j(QE);function YE(t){return t instanceof Uint8Array||ArrayBuffer.isView(t)&&t.constructor.name==="Uint8Array"&&"BYTES_PER_ELEMENT"in t&&t.BYTES_PER_ELEMENT===1}function R(t,I,E=""){let s=YE(t),A=t?.length,o=I!==void 0;if(!s||o&&A!==I){let G=E&&`"${E}" `,D=o?` of length ${I}`:"",K=s?`length=${A}`:`type=${typeof t}`,c=G+"expected Uint8Array"+D+", got "+K;throw s?new RangeError(c):new TypeError(c)}return t}function T(t,I=true){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(I&&t.finished)throw new Error("Hash#digest() has already been called")}function _(t,I){R(t,void 0,"digestInto() output");let E=I.outputLen;if(t.length<E)throw new RangeError('"digestInto() output" expected to be of length >='+E)}function k(...t){for(let I=0;I<t.length;I++)t[I].fill(0);}function h(t){return new DataView(t.buffer,t.byteOffset,t.byteLength)}function f(t,I){return t<<32-I|t>>>I}function $(t,I={}){let E=(A,o)=>t(o).update(A).digest(),s=t(void 0);return E.outputLen=s.outputLen,E.blockLen=s.blockLen,E.canXOF=s.canXOF,E.create=A=>t(A),Object.assign(E,I),Object.freeze(E)}var OI=t=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,t])});var v=Uint8Array.from([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9]);function pI(t,I,E){return t&I^~t&E}function RI(t,I,E){return t&I^t&E^I&E}var II=class{blockLen;outputLen;canXOF=false;padOffset;isLE;buffer;view;finished=false;length=0;pos=0;destroyed=false;constructor(I,E,s,A){this.blockLen=I,this.outputLen=E,this.padOffset=s,this.isLE=A,this.buffer=new Uint8Array(I),this.view=h(this.buffer);}update(I){T(this),R(I);let{view:E,buffer:s,blockLen:A}=this,o=I.length;for(let G=0;G<o;){let D=Math.min(A-this.pos,o-G);if(D===A){let K=h(I);for(;A<=o-G;G+=A)this.process(K,G);continue}s.set(I.subarray(G,G+D),this.pos),this.pos+=D,G+=D,this.pos===A&&(this.process(E,0),this.pos=0);}return this.length+=I.length,this.roundClean(),this}digestInto(I){T(this),_(I,this),this.finished=true;let{buffer:E,view:s,blockLen:A,isLE:o}=this,{pos:G}=this;E[G++]=128,k(this.buffer.subarray(G)),this.padOffset>A-G&&(this.process(s,0),G=0);for(let e=G;e<A;e++)E[e]=0;s.setBigUint64(A-8,BigInt(this.length*8),o),this.process(s,0);let D=h(I),K=this.outputLen;if(K%4)throw new Error("_sha2: outputLen must be aligned to 32bit");let c=K/4,n=this.get();if(c>n.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;e<c;e++)D.setUint32(4*e,n[e],o);}digest(){let{buffer:I,outputLen:E}=this;this.digestInto(I);let s=I.slice(0,E);return this.destroy(),s}_cloneInto(I){I||=new this.constructor,I.set(...this.get());let{blockLen:E,buffer:s,length:A,finished:o,destroyed:G,pos:D}=this;return I.destroyed=G,I.finished=o,I.length=A,I.pos=D,A%E&&I.buffer.set(s),I}clone(){return this._cloneInto()}},Q=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);var FI=Uint32Array.from([1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209]);var EI=BigInt(4294967295),TI=BigInt(32);function PI(t,I=false){return I?{h:Number(t&EI),l:Number(t>>TI&EI)}:{h:Number(t>>TI&EI)|0,l:Number(t&EI)|0}}var tI=(t,I,E)=>t>>>E|I<<32-E,sI=(t,I,E)=>t<<32-E|I>>>E;var SI=(t,I)=>I,qI=(t,I)=>t;function BI(t,I,E,s){let A=(I>>>0)+(s>>>0);return {h:t+E+(A/2**32|0)|0,l:A|0}}var iI=(t,I,E)=>(t>>>0)+(I>>>0)+(E>>>0),wI=(t,I,E,s)=>I+E+s+(t/2**32|0)|0;var VI=new Uint32Array(8),MI=class{canXOF=false;finished=false;length=0;pos=0;destroyed=false;buffer;view;salt;blockLen;outputLen;lengthFlag;counterLen;constants;constructor(I,E,s,A,o,G,D={}){let{salt:K}=D;if(this.blockLen=I,this.outputLen=E,this.lengthFlag=s,this.counterLen=A,this.buffer=new Uint8Array(I),this.view=h(this.buffer),K!==void 0){let c=K;R(c,4*o,"salt");let n=this.salt=new Uint32Array(o),e=h(c);this.constants=G.slice();for(let H=0,r=0;H<n.length;H++,r+=4)n[H]=e.getUint32(r,false),this.constants[H]^=n[H];}else this.salt=VI,this.constants=G;}update(I){T(this),R(I);let{view:E,buffer:s,blockLen:A}=this,o=I.length,G;for(let D=0;D<o;){let K=Math.min(A-this.pos,o-D);if(K===A){for(G||(G=h(I));A<=o-D;D+=A)this.length+=A,this.compress(G,D);continue}s.set(I.subarray(D,D+K),this.pos),this.pos+=K,D+=K,this.pos===A&&(this.length+=A,this.compress(E,0,true),this.pos=0);}return this}destroy(){this.destroyed=true,this.salt!==VI&&k(this.salt,this.constants);}_cloneInto(I){I||=new this.constructor,I.set(...this.get());let{buffer:E,length:s,finished:A,destroyed:o,constants:G,salt:D,pos:K}=this;return I.buffer.set(E),I.constants=G.slice(),I.destroyed=o,I.finished=A,I.length=s,I.pos=K,I.salt=D.slice(),I}clone(){return this._cloneInto()}digestInto(I){T(this),_(I,this),this.finished=true;let{buffer:E,blockLen:s,counterLen:A,lengthFlag:o,view:G}=this;k(E.subarray(this.pos));let D=BigInt((this.length+this.pos)*8),K=s-A-1;E[this.pos]|=128,this.length+=this.pos,this.pos>K&&(this.compress(G,0),k(E),this.pos=0),E[K]|=o,G.setBigUint64(s-8,D,false),this.compress(G,0,this.pos!==0),k(E);let c=h(I),n=this.get();for(let e=0;e<this.outputLen/4;++e)c.setUint32(e*4,n[e]);}digest(){let{buffer:I,outputLen:E}=this;this.digestInto(I);let s=I.slice(0,E);return this.destroy(),s}},V=Uint32Array.from([608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731,3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113]);var uE=FI.slice();var J=new Uint32Array(32),w=new Uint32Array(32);function yE(){let t=[];for(let I=0,E=0;I<16;I++,E+=16)for(let s=1;s<16;s+=2)t.push(V[v[E+s]*2+0]),t.push(V[v[E+s]*2+1]),t.push(V[v[E+s-1]*2+0]),t.push(V[v[E+s-1]*2+1]);return new Uint32Array(t)}var AI=yE();function a(t,I,E,s,A,o){let G=2*v[o],D=A[G+1]^AI[o*2+1],K=A[G]^AI[o*2],c=J[2*t+1],n=J[2*t],e=J[2*I+1],H=J[2*I],r=J[2*E+1],g=J[2*E],C=J[2*s+1],F=J[2*s],b=iI(c,e,D);n=wI(b,n,H,K)>>>0,c=(b|0)>>>0,{Dh:F,Dl:C}={Dh:F^n,Dl:C^c},{Dh:F,Dl:C}={Dh:SI(F,C),Dl:qI(F)},{h:g,l:r}=BI(g,r,F,C),{Bh:H,Bl:e}={Bh:H^g,Bl:e^r},{Bh:H,Bl:e}={Bh:tI(H,e,25),Bl:sI(H,e,25)},J[2*t+1]=c,J[2*t]=n,J[2*I+1]=e,J[2*I]=H,J[2*E+1]=r,J[2*E]=g,J[2*s+1]=C,J[2*s]=F;}function x(t,I,E,s,A,o){let G=2*v[o],D=A[G+1]^AI[o*2+1],K=A[G]^AI[o*2],c=J[2*t+1],n=J[2*t],e=J[2*I+1],H=J[2*I],r=J[2*E+1],g=J[2*E],C=J[2*s+1],F=J[2*s],b=iI(c,e,D);n=wI(b,n,H,K),c=b|0,{Dh:F,Dl:C}={Dh:F^n,Dl:C^c},{Dh:F,Dl:C}={Dh:tI(F,C,16),Dl:sI(F,C,16)},{h:g,l:r}=BI(g,r,F,C),{Bh:H,Bl:e}={Bh:H^g,Bl:e^r},{Bh:H,Bl:e}={Bh:tI(H,e,11),Bl:sI(H,e,11)},J[2*t+1]=c,J[2*t]=n,J[2*I+1]=e,J[2*I]=H,J[2*E+1]=r,J[2*E]=g,J[2*s+1]=C,J[2*s]=F;}var UI=class extends MI{v0l;v0h;v1l;v1h;v2l;v2h;v3l;v3h;v4l;v4h;v5l;v5h;v6l;v6h;v7l;v7h;constructor(I,E,s,A={}){super(128,I,s,16,8,V,A),this.v0l=E[0]|0,this.v0h=E[1]|0,this.v1l=E[2]|0,this.v1h=E[3]|0,this.v2l=E[4]|0,this.v2h=E[5]|0,this.v3l=E[6]|0,this.v3h=E[7]|0,this.v4l=E[8]|0,this.v4h=E[9]|0,this.v5l=E[10]|0,this.v5h=E[11]|0,this.v6l=E[12]|0,this.v6h=E[13]|0,this.v7l=E[14]|0,this.v7h=E[15]|0;}get(){let{v0l:I,v0h:E,v1l:s,v1h:A,v2l:o,v2h:G,v3l:D,v3h:K,v4l:c,v4h:n,v5l:e,v5h:H,v6l:r,v6h:g,v7l:C,v7h:F}=this;return [I,E,s,A,o,G,D,K,c,n,e,H,r,g,C,F]}set(I,E,s,A,o,G,D,K,c,n,e,H,r,g,C,F){this.v0l=I|0,this.v0h=E|0,this.v1l=s|0,this.v1h=A|0,this.v2l=o|0,this.v2h=G|0,this.v3l=D|0,this.v3h=K|0,this.v4l=c|0,this.v4h=n|0,this.v5l=e|0,this.v5h=H|0,this.v6l=r|0,this.v6h=g|0,this.v7l=C|0,this.v7h=F|0;}destroy(){super.destroy(),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);}compress(I,E,s=true){for(let A=0;A<32;A++,E+=4)w[A]=I.getUint32(E,false);if(this.get().forEach((A,o)=>J[o]=A),J.set(this.constants.subarray(0,16),16),s){let{h:A,l:o}=PI(BigInt(this.length*8));J[24]=(J[24]^A)>>>0,J[25]=(J[25]^o)>>>0,J[26]=(J[26]^A)>>>0,J[27]=(J[27]^o)>>>0;}for(let A=0,o=0;A<16;A++)a(0,4,8,12,w,o++),x(0,4,8,12,w,o++),a(1,5,9,13,w,o++),x(1,5,9,13,w,o++),a(2,6,10,14,w,o++),x(2,6,10,14,w,o++),a(3,7,11,15,w,o++),x(3,7,11,15,w,o++),a(0,5,10,15,w,o++),x(0,5,10,15,w,o++),a(1,6,11,12,w,o++),x(1,6,11,12,w,o++),a(2,7,8,13,w,o++),x(2,7,8,13,w,o++),a(3,4,9,14,w,o++),x(3,4,9,14,w,o++);this.v0l^=J[0]^J[16]^this.salt[0],this.v0h^=J[1]^J[17]^this.salt[1],this.v1l^=J[2]^J[18]^this.salt[2],this.v1h^=J[3]^J[19]^this.salt[3],this.v2l^=J[4]^J[20]^this.salt[4],this.v2h^=J[5]^J[21]^this.salt[5],this.v3l^=J[6]^J[22]^this.salt[6],this.v3h^=J[7]^J[23]^this.salt[7],this.v4l^=J[8]^J[24]^this.salt[0],this.v4h^=J[9]^J[25]^this.salt[1],this.v5l^=J[10]^J[26]^this.salt[2],this.v5h^=J[11]^J[27]^this.salt[3],this.v6l^=J[12]^J[28]^this.salt[4],this.v6h^=J[13]^J[29]^this.salt[5],this.v7l^=J[14]^J[30]^this.salt[6],this.v7h^=J[15]^J[31]^this.salt[7],k(J,w);}};var kI=class extends UI{constructor(I={}){super(64,uE,1,I);}};$(t=>new kI(t));var dI={C:[["CcRunsaOm9T+H6q6KUy6OKcaoXdTTN0bbH3A29Cr16c=","DANWUwiW7sQql+2TfzE1z8UUKzrkBbg0PB2D/6YEy4E=","JQ9RFqQX12qqQilS/MWzMyn3cU/CbVbAQyUH/HQKh8Q=","JkBlrYdXLgFmWWJsM8ghP3o3O5uCJaOE9FjYULtKlJ8=","K7jpStjYrcps6Qn/lLh1BymylORAA3baOeM/2iS9Qq8=","GQUQZdBdhh7IE8FSkdRqMo9iAbIa1dI51Phfuwml264=","JFvQYXqkSWGPW9RVCqx7jgjU0cAXFllDzfR3bN/zQ0o=","CfsaERgHT/edisv1sCEx4EihVwFV4PKxw2rQkdSRqI8=","I0q1BLuugZiXJ0GVL3i36wGOoZLwXlTBSEq4lz/2bYg=","AfZuUJuEw1WuPUw1E6KC/Uj5yMZDn0Kng1+8/g8qMkw=","GyL11p1yXmACzwDdnuYtGlrw79xJEPVBJ6kgzMQ/kfo=","AlK1Xt6tE1+FKWi38cT0kPplns1bR6eKfbkfZabfwj8=","F3OuLhY3ySrQZ3wqBH/qjspLUzA/IYcfaJKiwEh9f/E=","LVewKQbNCrgqeedvru9vh2ZurAk893FWRdXsn3rHMvU=","ChbzpigksoHost24/DkaSY+wYTF/r/oDaW+DRZYxPZM=","Fmb1Jff0tpiNKjeDSrdH6uBYd1e3iOt/HiawjjaghZE=","BdpE+OCjuLsTIx8MoltQtX9cghKOHf7D5UHZEuvhe3Y=","CaObqZkzA7oZG6yL2z4BRNv7XzliTN2VJNx4YWM7yVo=","BsD7gkoZIC0w7mtBjAAp4QDoWm0Vj58qgo39LtCSCmg=","A4fY4FaysXapd2tEkss7QYrcZgYn5SuzMkKDv5UiOV0=","FHoa+CA271sop6N76kDWrDATzxtiNYOWv3FW9cLcloQ=","MDjZIGDa6q8b0Egr0/BhPYjo3/kKegUl+SJ+TLfG+Bs=","BylAqh1Tilo5oyP55dZWFs9sIjM5AG+XialyRVMpCPU=","LT1gSUn04UxwuKh5rt7Emzo2e6IWrwSPRk7W8V4rkCM=","IlueTzXHVJ+Ad0wrTRgwmy3PfHKHuYLkl0ahdmQec8U=","HqeBKI/fE7IZAJWiNEgo433+gcdaCXCfDRObu/bHBBQ=","COlsPn6N5EMrICQFRYRouQ3GiQ1M7hKLNQLltstK7us=","BbQ9p8iqKa9tyq5X0HC0nSnOiJpkpKwYPoXVWzZsgF8=","vsmKA047ive6SGHxrVpI3O98mW56UcfN3nJNj2EOUg==","LrZ8z6KeK0Irn4Sl0FdfxDWzD8rjAwOUgL44TuTr5yo=","ECu9who/FHvwTu3uXXC9CEpxBcYxyG7NLE6HSaE5Fco=","J0vBbIhyG6v9W76NhWLBvxJ644kVKA+7jjEVytNYL3k=","GFzs5BdUmyUoPeBFEfdpEByIULQJ1JKKuDFhE1G9mTg=","E8c/sEP36Xi8nPtVx/qstPTII2dKvhdzcFmsCjLDYAc=","JLOh2DMIdCs2DJxgWVZz4gHN1M71pBRckzxOWWlIHXA=","GLWulN+eyXqqKo8PQkJbzM3IJmoHD4Zu8PSNejdEOYs=","IOs5jLlYzCzMfLH6w4UBq744FpsthSLZ5fCZ8tWQXLQ=","HliN0+yLDSUsLHwMeKArIru60fTcqi54qLju8vTik0Q=","D4vzvWwiujsb86suP7QIGM1CF/+68pTKQjMdTjBDoKY=","A4jJ/PMPwoQdZI9GutAd0QvuncGE0l6ryfYXAhEJzsM=","K7fzl8WUGsZ776iyMvFciFPawmPaeTVVRBqQzsg7ZFQ=","F/OJtS+ep6mIdKSjHvanvrQ/sX2w5JklC7PwGBxZ+yE=","A6IJDqy4l6MfsQVh1WCpruwkt60U0XsUXyDIdaCyjHw=","DDmFNPDrWA8f5L9kVTOJ5nzKRxQ5lDDglhncvuF7oJk=","Bwlayf2kavp/GBJZ42Nf7/p/Ee5j8+53elzr9IIjKMQ=","IEb3zxyPE+8racvIvA1dgJ+CVoq+KzPRzQYJWLHO1oM=","LCdBNqXeKEnebn+S+QlyllAay2jVYTj7y2YMTLD2kQc=","HE1ReKy1xrbs7vI6/G8W7HsDgwlMtkZ+jQ9FB7PPdMM=","BlsUR9DWTOztEWeFuSxjpqfdlwFQfcvouQkyXij3uNM=","ImXX4kSIEiDIGhk9l5MwQJyb+jM0OJUTQOAj57cqGWE=","FbErNVr34FY3ocduZ/nOxvyopkSbN2afaFBQIlazCro=","GhUi/sxq4Cjk0+MClJe4jzXCtIxoevFo7CWC2QdbQ4c=","IvVueegbdJbkcqZBoFPEFLzFOwqTUOJYkkCAMHb1jyY=","IC3bZtCYiZTnqrrWks6sTiMkZyoXq4QX0e4niv0X/Qw=","ErBwHogTxbIajjAgj48RWLls1Ciud73qcvhFEPc+384=","HmP9IOcG4UB8iDjOsmuEyf5pP93g6x4anffoTlPu7n4=","IKFsWoYlbe/9Fa8XTDn52aoRUAZ2rH5XAIgoDdGJYlk=","HI+L+OFT2lWtWsouqu442lY+BDXA8vN8J1WPubrgo+s=","DXcyaHu3v186q8/cxPu2fhWcGYMhPkFsOIAST93xh8k=","DN0ER1qGmZou3Lu/gmSxleEIs7YLZHXYNfbM754vaGU=","L+ZVhs1OdUtMY6iMLtP5ug47+kP1R7QRU1YMIU/jy80=","BQPPljyCc2BOZZEo7CkmH2I5mBXZjFbb9PKDfHJ61Nk=","HuSOong5Bht4N5k29tl8qUALOT71/fOO8Udch0LLM0w=","GkI/jY/IkrItfNW/AZfFdcV56DVj0EhZ1zssHFwEE/k=","BpoNpQEz6ZUvAOYXeJcqe+Do2Kt2yVYWrkZWNqu5fsc=","G/eHndQvLLuRxloJdjVvZ5ZML5Tfvw5EzyuZCRZdhhQ=","GyPcz0hYIgZcj8Cv5hC+cWTiUFYmf2xKgF//1FR6C5g=","Lr6Q1vb9ykIODC4ATOXFpECeVkycTzZx4wEfYnvsfC4=","FnzWkwU1qBbf6+gdIMN253aHdg86L6DaKQsvTWxoY/c=","CIZcEPSmM8VMzItot53yhfGfEhA3TMZOPIqWbU+QJks=","HekC+8C/AZUcolq7OdeIlHIbN+BxhRsDpyzGuDO3iTs=","Dj7KAHaZ3Q+FLrItpkLklfZ8mI3VvwE3Z2sWox6rRmc="],["DumlkrqalRjQWYbWVvQMIRTEmTwRuymTjSHUcwTNjm4=","8URSNfIUjFmGWHFp/BvNiHsI1NAIaN9Wlv/0CVboZA==","CN/zSH6KyZ4fKaBY0PqAuTDHKHMLerNs6HnziQ7Pc/U=","CE1SDk5btGnh+Qdct8SQ76WVZe7a4tAMqO+IzuorAZc=","LRXZgtmVd/oz2lZyJBb9c0s+ZnovnxXY6z52euD9gR4=","DtJTiESroWHPFXikPPA2TpFgH2U2pZltDvvmVjLEG20=","JgDCfYefvKGG5znmNjxxz4BMh32Cm3NdzD468ClV5go=","KPi9RKWDy6pHW9FTlkMOfMuZpVF0QN/ZcAWFWCgr8sU=","Cc19TDgNxUiHgarQEufq7x7TFNf2l6VXLQMMVd8VMiE=","Ebtu4Skaq7IGEg7KrORg0ktnE/6+giNJUeK+59D4VfU=","LXTo+gY32YUzEPPA4/rh0G8XFYD1uP0FNJyt7s/OsjA=","JzXk7J05vf+sm+8xusujOLGglVmlEaGL5LTTFu2IkDM=","DwPB6eCJXbGl2mMS+qeOlxEGwz+Cbgjc9hfiQhMTLf0=","FwlM0pe/gnyvkpICBbcZwYdBCQuPd3gRhIp+nq1neMQ=","Dbj0GcIfkkYfwrMhlGV5g0jfkNQXgELIG6fUtNVZ4rg=","JDRDYT9k/6QXQn7Vkz/PvGaAnbYLnKFySiJwnOzu7OI=","Iq9J+/1dfp/NJWwlwH092Oy7rm3uzQOqBLsZH62nVBE=","FPvTf6itbk4MeKINk8cjDEZ395e0MnMj9/fAl8GUIOA=","Fakpi7uIJTTUssn7xuTvQYlCDE6z8+HqIvqn4Yta5iU=","L33nXyPdqqUiEyPrzrLyrIPu+S6FTnVDTC8dkFYiMrw=","A2pEMqhoKDt4oxXoTErlrsohby/56bLmI1hPdHnNXCc=","IYDXeGqM+BDidyGKsUoR5eOfPJYvEehgrhxWgseX3lw=","CiaO+HBzbuvQy1W+ZA1z7jd4mQSEzAPOU1cjd+7/+OQ=","Hu/v4RwL5GZPKZkDHxWZSCnpgujJDgkGnfm64WgJpbI=","J+h/AzvR4KicpZboy3f+OkuPuT2aESmUZXGjw88kTFI=","AUmKPmWZ/iQzIfV9bFQ1iJl5xPnSo+GE0hRRgJF47jk=","J8CkH0y5/mfp3U184zcH901da8wjW+8Qjeobvr3lB6o=","H3UjCQixQbRmNyOLEg/HcPT0roJdUATBanyR/h2uKA8=","JfmakZjpIxZ7uoMbFf/9LXuXs6CJgI1OsfCghb7iFlY=","EBvDGOnqWSDQ9qzcK7UmWT09VuyO0UxnYil0IoupAMY=","GhdWBwZ9UXOXwTNOywGXVOvAyFKjzwkewczEMgeoPHY=","DwLw5tJfnqPeskXz6MOB7msus4C6SvXBxNiXcBVd83s=","FR11esyCN68I2KZncgPslpJWXeRWrnif81izFjs5O8k=","JWzZV3zqFDBJ4KH+AGjdIAhJgO5bdXiQp50To6Yk+tQ=","BROrr/YZXqSIM7E9pQ4IhEdmgsP73RlUl7iuhuGTfGE=","HZVw3HCiBfNvYQJR7m4ugDkkboTkrESDhtGdusTkplU=","GPGlGUdVuMXV1/G/iqpvVu/7AS3XhM9eBE7sULKfydQ=","JmtTthXvc6yGZRLAkeSk8vpLsK+WbvQg2IFjI47rvKg=","LWMjTJIHQ4qkK43idkTAImgwTf64yJoaP0/W6DRK4Pc=","KrMPvlHuSbx7Ot3iGabwtfu5diBe+N9+ACHa7m9VxpM=","Gu5tSz6+k2bcuczkiWnU3x3EKrzVKLJwBo2SB/pqRck=","GJGuq3HjS4laeUUuWGSuHRH1dkbGC7NKohHRI/YJUhk=","JEkrX5XAsIdkN+lLQQHGkRjhayZXdxvTp8qrAcgYqks=","AXUhYbM1D34bOyyGY6DWQpZGKCE9ZsEKsv3fcbz95o8=","CrZ2k1ci4vZ8+4STjmFMbC9EW40UjeVDaM+4+QoA86c=","Cw9yRyuaL19FvHMBF+2a5Wg/wubiJ+PU/g2h96o0gYk=","FqpvknOs1WMcIB0aUvxPisryshUsOubfE6eKUT7c02k=","L2C5h+Y2FOsTwyTB2HFusL9i2bFV0jKBpFwI1SQ1zWA=","GNJK4B3ekv12Brt4hFVOnfHLibBC9Qj9nbdrfMGyEhI=","BPw792/jHi+Nd2NzEw33nRjDGF/fFZOWBxXUckz/pYY=","DRj2tT/GlUbP3WcLQXMr323ungayEmDGtdJicEaNv4I=","ukIxqRjxOs7BH7r6F8UiPx9wtM2wRQNvpdcEW9EOJA==","B7RYsuAM18YQCYUwFmPn7DPIJtoGNf8evt0N2GEgtMg=","HDXC2W25D09gWOdvFaDIKGu6JOLtQLFs7Dnp/XuqV5k=","HRK+o9jDKl12ZWjwPdHs2wpPWJq775aUXg3eaI4pIFA=","DZU+IAIgAycFJfmnNSbpiJyZW7Yv3qlDE9tAWmEwAoY=","KfBT7DiHldeGpAvsTIdQR/Bv8LYQtAQKdg4zUG0mceE=","BBiOM3NfRrFKSVKphGO8EuJk1fRG4MP2S5Z5yqrkT8I=","FJ7CiEbU9DioTx0FKUMbuemWpAi36X6zvxc1zb6W9o8=","DeIPrgr1GIvKJLX2NjC61Hrq/ZjmUZItFIzOHF/d3ug=","EtZQ6PeQsSU+qUNQ5yKtL32DbCNLhmDt9En7pphMZwk=","IqtTqjnzStMOqWcXunRGqv2tvBqKvijXg0DfxLq7j2w=","JlA+jUhJvfVFDavqeQe8PeDeEJhx3XdpBKEp25FJFmw=","HV56Dill3/oA9UVPUAPFyOw0sj2Jfn/EyAZANbDTOFA=","DuPY2qCYvuAS2Wt+xIRIxryaau+lRGFbnLPHu9BxBMs=","G/KCCCoEl5lV0wdUzU2QVvqe96cXVwPZHcIytfmOrQA=","B64TRKv8bCzj6VG8MWvuSZcWRfFraTczoCchc+6a1GE=","IX46JHgnw3bsIbEx1RHX29yYo2t6R9l6XI6Jdi7oBIg=","IV/+WEsOsGegA9Q44vvii6vh5Q78KJQRdQm2Fq3cMO4=","HncPyOy/3IaS3O3Fl8TKD77Bm4TjPaV0EqktHTzj7CA=","L2JDzakZv0yfHjqKbWagV0KRT8GTOLPA5Q6Cj2n/bR8=","JG793DEX7NOVldAEb0SrMDoZXQ6cyJNF08A/+HoRtpM=","U+jZs+pbjtT+AG8TnLxOAWixyJqRjfvmArxizsat8Q==","G4lKL0XLlmR9kQ9qcQ04t+tPJhvu//E1rsBMGr5ZQns=","CusVVOJmaT2CEmUkeRB9X9wHer+IZR9aQlU9VOwkLMA=","Fqc19vcgnSTmiIaA0XgcfwS6fXG9S30OEfr52o2coo4=","BIe4t/q1/I/XwTtN8FQ80mDkvLthWxk3T/VJ3PBz1Bs=","HnW50sIAYwcSS+omsHckk8+11RIGjDrWd/31HJI4h5M=","BRIOPQ4oADwlO0bV/3fScq5G+h4jnRxslh3LAto7OI8=","DaX+tTRXZJK4Iuh2MkARmsCQCgU7Fxgj+JD1/VXXg3I=","LiEbOaAjAxoirMGh9fO7bYwmZqY3nZ0sQMyPeLe9mr4="],["GbhJ9pRQsGhI2h05vV5KQwK7hnRO3CYjiwh44mntI+U=","Jl3f4SfdUb1yOTR7dY8KEyDrLMdFCswdrUf4DI3PNNY=","GZdQ7EcvGAng9mpUXh5RYkEIrIRQFcKqPfw2urSX2Ko=","FX/z/mWscggRDwal90MCsU10PqJQZ/D/0DL3h8fxzfg=","Gw9o8HJqBRSk0Fs3e1iqvEWUWELnAYN4Skq1oyM3uPg=","EijSVleHFAQwVp1pNC03TYVQnepCRdtHn97xpCXidSY=","F6h4Ts3N1uVQh1w2qJYQ97jB0kXVL1P/lu65EoNYXgs=","CYcKi0UHIqKy1e566GWq8KoArc/DFSCjLgzqolCq668=","Hh1qqpAldOPkBVxrbwOkmyu9t4R/lA68eMCm0/k3KmQ=","KBbE+msIVIfh7sHu/ZLun+9A8wGQrGEAkQPQMmZVDbI=","FzWf2Ivja6hnAA6D92/7RmYGNO+60V3PTU1QLUJ/9Rw=","DjAEy0S6RVo/Fv770MAmQEy6wgPA8ja6rYeWELhmECI=","ClXydq8c6268bGgg8zSybxHKSvmMgzvBtJYZPWsEp8o=","Ae5LBFitzUxIYaJ63BQEpZgdMgtrjiDlHTG5uHfoNG0=","FDFeJ1Pn+5T3AZn4ZF14+HwZSkBU5phys4QdobT0gvE=","K3tj7P/VXZXGYPQ1rZ4uJfJmy1fhfr0baw116IpqVtY=","u1b6Pp/UirRtTnKVu+EgS2UuvpWCIYYPVuONuA2DwA==","BQZTv13Vnt1tFfpgcfUAUFchizOo+SpYucJlYIEkn4I=","LFdUI+JLUiZVxal2xl0GkoeQDI1YJVFAmMWxPIbx/Nw=","L/OizN7pHgmjL3QjK3BM3Zn3LB94VXos5WiwfiGAcdc=","EURzSQGoHBVDuLxvydNl9QRp64mUlJHTaT2+nGI42Qw=","Hv+alU4kvNSvILardNieHNOLxpSp516m2iF6mNuAzSI=","FHB950lsVjj5f+m9fUhcIOrWv9v8BZl5Hkn60DAc1t8=","E9DeNBuoGfkP4+8ffOClTYU4rN2bPvhAqR1I7lNgQrg=","JlIKsdIAVdre1xLVmwcIhFjBivvQ2liu6fFRqQM3K6E=","Boy0gnrEhfxudTejwKBtCKTCeQ9cZdmGbXUpaZn3SV8=","B9a6qi5YfCGwPfoOtxE24pgss4m0OMi8KCdI0OZ06J4=","FbktNtsCyxa4Me6rLm7XXRJv+8J0zDNiNwhRUm3hPSc=","J3uc6JEz3nt5GK1fz6tzI+9bnBkWtYjNfloNgUy8M5U=","KuhHtms8XXO3C3MwQKqGxR9zcJLWXDSS1SkAD6GAKyQ=","L6Porh/vl0ze1qum3CXPVn4W4K8p5nVwZkPyG/jv1lE=","Cx1LlQjOxNGapT9O/kbFeVLb02j8vNRUqLEIe8GKIIg=","AtOBAU0BV4uIizJzJwur3Dk6w5LnlYvgR4lH+vpWm7A=","LnmoJ8hUBiQlI6lEMQBwIbyGWkXKvLpDaMQdRIb+/sg=","AgfJm31ZSlxh1+YMwjZcTAyATNQ0CYr2JE8KAMJZs0c=","EZwSQIbqWOu4PxTyYsaTQkNg6X5vtCroWWutvp7bLco=","EE/zjMoPABc8zQtovdugn8VD8HT3U72OQT+DNPiHolE=","L1tTd70Vb4mEWBHrJiQ2Y43AOLjLEOFHqH30wOI4QlM=","D3Do4C0dI5aJMKjg22mxwgIE8+O0zs0QH4FHbQteqZY=","GsRlOlEHGuci+QoD8AbYV1gU23grfxn2B9rk1WrVhrM=","ErEmAOO/2Oe9+uXvnE84BfpB50rKv33oF4IwF6iyPbk=","EbnRmQiRnay34PjQuncobUF1KaGKHYnEBe0cMCif3Sg=","LDUNJF9PdYZHRPiNv/j+M1sA9PtoiJXBNjp0hKzoINM=","Fqf3b9KyFH2275TCLHi/94LeF+9z5S2n34JgP0IrRh8=","HRjYAkvh6W7CViavBqE59gk1RapQQDPax+KF0cw9s94=","DIyrGtWZgHKUW5uIIo9TwpVGaBn7lNj2qe1Em+j3wYw=","GmjRM9cDzUBsowBBkTzjQjxzsTOEGHqxUwEJt1atT3o=","JKWLnobOgj/0xFNClBQX/yPQPID83vlJjKDYYIVeAak=","DmMVyT+7idOAIRSLbDUyD7eTxBxqQ4bWrtas/i+VLFc=","LDgG2ZppzmMpnodvXyGMcpXYciR5XXVo1VhpbjTGkvg=","BZyJOncelHdNSaNWSUVo3TdoVquJcF3/JduCc4YPoE4=","EWbZgZxPquiYIkPQ3rH4l3An1cxWv1LOJgvsXifosPU=","EoBvqz/LCfwreUBsPCA8SWX8clkRKvIQQxLhU3Mn4KM=","FyAV4OM3NgWPYKoz6C091z3D6tifmN7Q26NdzB2L2iw=","B3uhiADYUtCjT3CujP1ooIApa/nUehtA3n5v1jkqDTA=","IJTs12i/qPDfDXjQ2Ubhr/Si044CnkFHnW48D+efqLk=","DM69MCr+hMIP93TTwfZQynzQvKCLqh4mHanHRBqCP4k=","W5MDBTu0DHNnH11VtAUuDVVJhx8bUoPwFIWmtWjNBQ==","JScokISrSSJ1tM1n04MRorgW6qaO5r2yOJ7u/WukxyE=","IiL5c4KQ2NXyo+rNrZXxLNTnQX7SZhsBL2RIx1A4d/I=","ImyCCPJtaea34C/iZVfmvRYPy+J+50H9HlgRYcF4k1Q=","IWsgjAJh88kfr2CeFfep1IU+QNkgRJayRBEV1zwpQcU=","Dg1mDgRqJZ87rWgpcptq4xUfvNdd4zsSL+E0yj1aTdY=","JA8DnSAmsyZvObpcTsSKxqzoiq2u+ZFJjNUtqqD/u6g=","KMjMz3tAosPP0u7g7E0WCodqTf60CP/jM+kvpeHuTXk=","DX+BtLRtTyR8QkPwRahSzJV9Kykj0o6y+ne1qYRO/Wk=","K+Qy+HssUJSoLHiEV2Ud2M2wIArDtChgy/VEdZlrdy8=","E+o58tY9mtrhh68U3Qe1M9RaY0NeDqTl5VXTXnDUAWs=","KeOxr+GXO+nNHPSwRzJav6plzyuY/zrtR4cEYZd+ySE=","CNt9aE5rhBtelpJJj5Wh+VChzx62OLtOSPO8GjxXEZc=","D08QQal2qgUZbaHAQhJOMnfqGij7bu6rS+wSQ70xYYs=","BanQUm1vGMhrJV8A6G7DTn+KJsJRtRwh/kwSvcTA/x0=","KEsDBN1s5mm89lDFq4XInUQQ1HKqbrAN8bjRflLy8/8=","I2PpsBoBY1mJYv+GkHAC+VkC5yUEkpTKerEMx6o/Bro=","AsLbEmR8TARh3TKQp1xfL9jX8RWz4EDLBd1+OtJg2EI=","LjxC9nFDH5Vg89CGOsRFBSQi1bmT6f2muBSGsU/+OnQ=","HThEHyKMDOIv8oglYPXX7jtMDKoQE3HLd4L/2Xr1//E=","JoFBsOScWeqx1XPq1OLh83k2TdEz8s7FdMJa3ix5Qoc=","IgnLLhh98VIoENPyiGjabPUq+aZdvXuAYEn0ctlmN0o=","Cl6yUQ5vgE0YMNeXSsFnfQggNOU4i/rukaMZ7KfB/6s=","HLKGTDiABzb4862YZp0616nV7lITjpa4pwFeEInjauA=","KvjtBb/I+K2lR+6bxsfGxejBXGwNOAo/mqJ3JzMhtU4=","D4XRWTs1vgP3myIohVVaJSvx8KORHXhBMsSbGpasDzw=","KQlRkuxT4LhZ66RWKV2VvEVn01Gm2tORuLiXB4VQCMU=","GpLv3h9fpWrrArTEuPUayAgx+JjHhDQHET+7YBEXeFQ=","KgXo3u6hXkN3wICqcP1qhtxz8/36a1X1YQYUwYSwsC4=","EhGfOwGcw/xG7MgIk+hvUQsd1AMLLOKMna3NHnGtSJE=","BCtv/mh7wjor9rczFyhqVDxg7RIvwiWq50LDocLdOh0="],["DrVE/uKBXdp/U+KcysmO19iJu069R8OGTzwr2BptqJE=","BVTXNjFbhmLwL9un3XN/vKGXrrEupkcTunM/KEdRKMs=","L4O53yWbK2i810gFYwfDd1SQffDA+wA19Qh8WNXowtQ=","LKcOLo1/OaEkR6yDBSRRtGHxX4tBp17zGRUgj1q6loM=","HLX5MZvmpF6RsE1yIicclJlBlvEu0ixdTscZy4Ps/qk=","CpwLGRao5B02DQLm4uXRuYw0387HaUKchRhn5G4Sb6M=","Hda6NzHknSHo026dTR7a0kXr+b3Z67YKJS5IBKY5D2o=","JK4qZ8PVIcEaEbcRKrve4wZHEHuAiGapgIN9DX2k4+A=","DSDJMQtcFNnvEoZq9aRerjypvhbSAElwZsiy7pZ4HXA=","DgR8mCH+lNVdQA12OmbExhaZk6vtVDxyhLSjVDABlEU=","KUdKt5mx4TlI7/QdLOeb+tM10JEQFXB2mIrCB+EMgd0=","A4mfE50NxLKBvjt0q0xweJt/QeespH6iciog15r7ypM=","GGZiT3YauN16kcXzevXkdjmVHVrLaxu/O5bKJz9xAp0=","E8EZ82cY99XwmthUEyWhOs9rNNttnuKvfqBgYSQPMAk=","DkoQCBWAd0ArEfE8CIkLc5ZDzI6T+kRIe1oVdd2Gf9c=","DvUF/USsEKJRtnDa/hTKvZranjACIQrJw4dvN95Oetg=","HTHk4qWXi3SRxD02dHClpdFEW2uBKaW5pv0jhAVyDeU=","Cpea1UKNSBy2JNnVBFJKlpTKXLRCG10dxq8sAw++rDk=","D3/M0uyLxu2c42gvOKopHe6pNz9JlXeL92Kt421qsqA=","JpG5JN+hIwBffAeNm/hwbe/pnCupm9buU7FT6f7Hu4A=","Agd99lELSGDla5E77zqA28RksORnit1g3qepUXRjIgs=","Ke4J2K+dJMpJNQzi4KpH0Ao9whuvv6wcm6YcWOKZPow=","CLKSxmHUJ1BrmgGRZiTzzeMyqs7Z8aSUpzPOpvJb+q0=","JYNpnOU2p1eyLkcT7fuwUAkshKvHLJCthzk6Hamkz5A=","Hj8bZgIj1lrYiZlHU3T24l/UFI64EQoLEs/6GWV7C2Y=","IPPsuzfDSux5ExRVRhJZ5ZsiLw7o4C8xlM9iqa1MNEg=","DfT1CI5ERPv4fVU7pi29qVaW2LnPYhCxyFUTsXdvvGQ=","ArNI7/1MnO8Aoc9N1n3WZLL/42GoB8WJolLGO8v8aDM=","G6HlIvyxU2ds2PIOgiVvAyfAAPqWsbRi/IS1VvJqhsc=","ApTETfjmjJYUTpZMN7vFdmdk7TVQr/gNvp0/p0QZ/lA=","AxNxbuxtzYpgLKBAcASY3ATHff4hlHU8WbyBjB0mNqE=","KH3sdGltZj4jWfaCJd6VU4TZYLuvuQlnQppELhnj7GE=","JeQvcsa+CUIxG6CXzzZWg9tJYsggT+ySE/D49ywZRr4=","EraIG5ZlT+F2jCQqzVOZsIY58IGpSJb16m2nC2tHXJE=","DfwrVFRv0yZ9e+VccWyyQ+8YEY7ZSYyCcESb2UGK/bU=","J91V/g1cD/Vq1IkPoCnCfF820Ezcc4mauZsocrKO7fA=","DGCWJxGu8W56LOWfWHRD7ItB743PzLOBiK3L3dMvFz8=","LtwJ/rJnxrWG5i//4yv18WwotYWYa4ERZoS36LQNQtI=","Cvg4aFnbJS/ylaGUZtjRAGIskFAhN6oc1MS8yWVtEeI=","Eh8hg5L3PUwWq+OCECpFnmwICzyk7aUaI+ZRoTpoBVA=","HqOCc/XVnmUGH4x3XFcf/HXvZ9KUBbXgKRPLMBnVb44=","Cb0jSQBWmbzArDW2J+L48Iv8OwvzCxRvN3QqwVVhh/4=","CRxQWx6SRIwRrqIqqsTUT2p/ITL4npG39V+UBGlsFDM=","CzFvHClonU9JD3/N1eny0lbUQ7oUzaS7eZsFc6kxqZ8=","IEklGRmo8/Q5gYi4H5nS4tDj9TWc+lW986p1/a3zZ+c=","H+f562eIEBkIgUFo4+TPeomaEFv55YSvAGQYikqsVb0=","FY5lebA4gVOwrNYw6pTej22WbVKcLQG56bHGfB7B1XA=","GZT4LycVOvud4qo/S+BcSyxIfjk9ztyiVmqmt/vDaWs=","G2JQVT6GKaWopAtWhDLOfb2DyHYD7szI2tVyzOvvbh0=","AgKWlAp9Ht7Srnn9ePoqwRq7IhC/JFQv6r7nHw0NfJ4=","JVOUP54P/OnCl80xwp8fpfAYg8yeUE/e16kFAywXDIk=","HFbrNiiWwvAK0Y+urwTVd/X+tNtOB3llw48ur1974Iw=","DtiFcgXgaABV3n6CK299YqwPdf72faH/e3c1IIiFz5A=","ARj5EYWgk1X52MP1VjZ6K+vnnn2VKKjXKlkmgWcarHU=","KnHmpnq9slp4AQ/m/gog0dhOIcunWtVZN9wYNME68MU=","AjJ9vAWZfOhXVoDkuJKdTp7SX7kgQnfWAwYZhtvuV+A=","DgUjXgHyHMPylxw4LRjBTkF4Wl7I1EfNk9EygXkubW4=","CYr6Lqf/Blsq38SrAPOwRJbB5JDqsmTSNwsQflpJIE4=","J73be/BuqmNBmtrkQgndJaTjXty4Y7AJvTTMxJBdIEs=","JwRAa8gG9MyxkIXLnTdxsSq1znqr8GAengaivJiDet4=","IcdcVGZLn+yGdWqpAnJhl1JE9Cz5HJzAszwqYrdWo+8=","K+hMHYTBYDjqX5MykGmdqqqBZMXqOaAry93GbPaf6Ow=","LJcOQdSGSc8BPGdsjGiKwWVWNyDR1fMmKKxbI5SIqW4=","DhrSZgoulY2qHyZUs6N/7mBUbKAycVBzMHB0LtyAZDU=","IGDuf993X8fjiaVTdjdMnjXVyHY9WX9CYwTiNvV3uCk=","HgEWgYyEPthvCdruClga8Q1S3ura13ZW5zbqwI5vDxc=","ConBSY7yWjg9iGu1hCTmlArDmePlV+nelRppfFSnV2w=","AwN0PW822SXhCXSDNQ9b0sspfU7JI5IJ9jxRa4SaZ+Y=","CM9ERG2WhDAjLfF11GK5ybDi4sN+hAZ2TLlsfDRGAY0=","JBmBHLrrP1UbCpIy7uXVPjdp+89SOVMwdDdfGwB3fxY=","QjfGImJts3a3dISdu+h2gJCC8bE/WCT0xYNp8n/ntg==","HltJDHLutgfhFKXLh6hJSxeJN83uNLno6Uc0LBRFRVg=","BCZTM+WeGl/3SSA8tKXRQVpyhixhOAscJC0PMsoVuXo=","GJ3q90JYRRrE2mglMr5D0kpcaDKTwf90ht4m012YLoY=","BOxRaw/UL6U6NJBc/e2q0CGzY5nQPYJjrgjEavPsp28=","LOHIoAhFqCs6obZkL8mIV4V2zvhhllJebVlcdwGtcA0=","JHgW/Q00+dOzlpF0eGBclKHAUqbtZjvcNE567paGtrQ=","xnbb5sSU1WCcRE3mIrz2DPVVCRpQf86GR3AZ2uqYfQ==","HLOVreUw/CQHqnshSNLfruMPTd8lj8FJzOPFzegKhdU=","GQ4UlOPP2to7nmXY/jwex2lUDaAj+ewuViWfalaJCw4=","GPKUGyM1E4M2w1GnkjQyIqhF7goupaO5FgwdbZsin+I=","FOojzosjEuB99X4K7OHaXSwOAfdX5qXIarXkA2iFRNw=","KBitEAX077XVVDYaKfheoQlA1ucfOOg2m+/zVjpmC74=","I846mlIpFaKBeTl3tJBUw31l+QuEHgypCBe6tJ1520o=","BsLtK+h2MJqbO0Ts43scQjgpJ90EJJZYo9QePzjV4CI=","GLZ0D3LXfrz2QrlFyi7WyKmFOjdJ1/q2BR5Mo29E/EI=","H+rLnrKmh4BhN00Gmp2uMoNp7mPnWhuZzbBqSLDZl2o=","GkTuRWWpZ2RzAMde0rJUPY1F1Ud/1gajVtEHO9E4MdI=","BB87O1sQUMFr89Yth9XSc7Bn2khGeRAyMe1loY2p/kg=","H9lYzE/gopC9D7+4uKUTrLWJjWO8DX5YW30IHEnrVlk=","F12roHxe2/hPCch6jDTdczJZQ6SPwSy4OdykdRJWHS4=","Cc8KTm4x3CTf1aWieneDPkd9Wy2Sz/X8XMrZUoxDung=","EtSUZb1BIMv3jlo0FNRMZTC8ljvXAcVNTGQYps6+gLE=","EBsvK2dYBNOyayvR4HxzZa8L/C7fAQkW7vs54oIV1Eo=","EU/GX6ugmll0ngtfERkweDUpoGOEViFiMst+WjOXNqo=","Hf+ZtSeZr8gCwrv5tn3QRNPLUQF9xPiDWN3Wc2bTqfU=","KQ9ElqUt1N2lntzNcyUDi73AVUrTqaC+eTHJEGKmcCc=","CR6HBGY8UWw7lnIdIDPZhQifuZLcpIyN3Ll9fRXH4Yg=","Lc4iWZ3gQZagFp/CEdD5yGkmQ6oJco6t9tULtTTA4yM=","Kaf/ByDhcMDmfv3nJ5Uyj+zvZtqtpfDiyoWKjGE1/Ug="],["FEhhRZjgD5jnrn3qRfvYO9loZT74OQzeLoa3Bq1AxlE=","CreykTiOXJ5DwNwfWR+4Ps22UCLhtwr0O4p7QMHf98M=","K3y7IXiW9SyajAiOZUryHoTN51SjzvWxXE1UZmEtat8=","K8aw3b4dcBtlcEKL3Byhvw2ln/O7u5X8K8ccDG5nplw=","EjpVoxmAOE89ILLOy8RO1gw4wR99IOknHvq5qQXu/Tw=","A3UBzIydyBkwmnafTfCY5YiwGFi8jrfieeKIO+n7jFM=","Fd4jFjeo6jRzwkmeG+4yDBfGoKT0ipsorRRE1TUd2zY=","HJsdo2mJIG3pFzsN37U5vfB/id8FXvwcxIkALaP0tTQ=","Hyjsn9yzhUyzJ+Pi/jlYVQw3/ReRmKQc8goaTIEGVMs=","KgQY4S3SbnlsCRvB+x5Q+CkCY7PID2gDbmWTwtsvg8Y=","Dfa8mQ3WiPq8H4pfj6Aqaob3o6nuRS9WhNEj6sFQeJA=","JM2ZqzAe504jguI4vplB2YdvMg6ZQEgWR/y/vKfraow=","EDbuxrOrZZpQwirjs1clLmRkHOCC5cCEv2Gk5hGYrIU=","IezhAwv1rVdZ81upavk22Cpkq+T5uy9QwopIggkoYRg=","Ll2QWeYjA9jRf7UJpgr9xNjuHZE3+P/w0MbpE1qvZss=","JZHYjBFYC3XE7fRNumujHGlvZ4niLT+mO7ruccaYaFc=","HmRzRcEIAFp+L4cPARQiI7siq0SgPHGYhSqvbXZcO90=","EH4nnXEOZTWO9E+WbllNK6BOPhXjfKWqURetxxtEHwk=","Fzspgpit9lmz9pWgL1Fhfsyn4iH2eDdUBfIEBeN3pEw=","EiigzRBZRocKzHWGlp5+Oz6NT19G1FCxRpggKtueoc4=","B3jLRdmMDsaISb8gPcexUYQJKMydf0BnC/fUizxmHWg=","Byp/8ScG+js0ADCP6zPvPd6uuaVni9Shff8Jb6menmQ=","KwmXsBFlwodFA9wS/nfWq1ikTFg7k5w10IBbtVXNCfM=","CAgFEpJZr1Di5fLY773jWBMtocGfy32vSJhUkcnSh7U=","FD5OHyr03vGxkDig1qyWBuM/QHBHmfCJC0q6Cy1suSM=","HBa0R98KMCbVuRI6uvAtaQdsWRUwUmYN8je1IhSF2j0=","IhJ2NWShfFuBZwPl5Sp9sMW/tmj+LkJMslE2FCaDC5I=","AW3TCkjZb3bpN49lvDQXgel8+5SvWlcJG/NBNCwNem4=","DvrkpWlRRlf2fhnKEcAeJCbvD6or7Ujv4HEdM46juGs=","KB3NUy3EUL5VlTbiUuAVnuIdW5H7+XJfSlfdhw2A53k=","D+TRGos/JNxVm0o3EY8Vq4Pa1adN+u1BY36ZSoEzP5U=","GFeTjgJ5CBkygnipEyIjRGQPIAxRQQRWCJdov86lYaU=","IAfQQ938VP2Zn29LY9TKZsXxJpUTiM3bHc3jKUQVVnU=","I95muSfVdnksaaLG598g0/x0VhT1ICeAvCtML7J+njk=","K9/L7+NT+i/+edLv1aUcmBNFot5A71x2S/kNqG/tz+M=","Js/8DlmEkzMT5PBt6tB5Q4gNpmkp063td+D6f5lCRP4=","IcUyrQ1QZ0vjlH/y1Ot0Tq26ooEvwPwlpBy4TA/T77g=","JG7PLuRTGGLMWi14Qv48eAuGjvRF9wyaHiv/RhScxG0=","A5ezmAo876D9xzOcT5UAs2Q8VKPuejlgAwR0Gi53LpA=","FESQlXZ3Y2qae/ErGsma+VXqcJmbL5ciEVUqx1Ysau8=","SpZml3eTjNlkP/JX1fVsX08eta3qSaZ4zsPqFwZ/HQ==","JCOlCHFCmoxIuhPk35OOYoDXFbOa9DRJ/wYDDjRuPis=","HKUGQOj0LAPCiAFOjvErgBTDxApi/FhW7ptjMUbsYCo=","CoM1wvp2LQm9oet+IrEcwRffeIwNAj1tiUdydoGnqes=","HFevemeW7Te9lkwzzRvJyJdHuiHfYQAgn8Pfn3B/HNo=","CPCtWmwB8L3n0ajn0mhIF59e4x1tWbuOLHAeN6TPuyI=","BQx4IcblProYWmJ4/gSlwfLyhkG9yEPJ+rKsiX6KJGY=","C8XURcXfUvubS51pVLx1dj1TsMIImDLr3KlgVnn2jQ4=","EKayoHxHLCoy6dwfBQH72lyfBbhh0ceKXP81lBl7c9Y=","GiREizRCR5x6yBkb+vxn2cdeQCALMY98ctDC2Qiz3bM=","BeIwx7kdwGeALGyf6tUIl8AzeTieKn3vNw70wo5Wcb4=","HurWhdnzV39+Nk2kf3TY7iz2zuMWYAVWFdjylKMClKw=","BKIuqhB5G1mxvYrZYm33QnVTXr6jAfj5EsUh7ynFBLE=","Bjd7YGFbe5qfDrInZ4bQKMyoL7zn2xzCf1C4SGyIBto=","x2SV2keLvf1iP8rC87CNZBxMZUc4+tZ7npDqBxVxTw==","JQrWuU4b0GgXz9JCFCOpXhi6hysnbBmeFqj8ZQxanWE=","Gy4OZhRvtbEiHIeChqCYPpA+apU5D1fSmKUNzm9Sq0c=","GMqJCq6u+Xx8F8qyw1GPzPEYC4+9E0+8vOOPeG8sDgM=","G1w9uU2eDNRVccG4gIQYbrWJMLzs6yyPd1sS83lhvqA=","BilMcmhqabYGk0mnOoFULLFqatcTN7fH/1pd/gaiYK4=","LBiiWowsrhebGmQ+ERWej1ydpEiq7jpE3ki+Psp7slM=","D8RaK5vW9BkBuqevrUDMKNRHnDBNEBBnw1Z/5EkzLrA=","A3i8O1oyz1ygiCJ8W28KVm4LdXM8cEgEYZ5ql5vB028=","AlU3U0a+q9CSv7/XJ4tDe908GL2VHX9CIM3FATYR/Z8=","BSSFOiqXF69kUA/sg2wTgH5ZeL4yiGBHvTaDpaZbaFk=","GzmYVTFU/CbOiPBIgWDCROHexki5MMEy0HfLk5l69eo=","EgdLTYPpL44KuSQprrUnAUAzipfujlx08rWZ2Vd/Jf8=","GkCx4BoJbqfrznTAJ1NrxYd4tF3O+3zAViVt0HMmpmI=","D1IovAlLnuwZZ9d4orfWtN5Y7ejg+XQWXTerbyM2vuQ=","JzFLlh0vlpcJd6M/L6xoI8BDIH5LakigVTfqeNd5wW8=","Knj1vfmK+h2m3UWrNguHdwPh+fDnl/7MpFMn7kq0ZZU=","LP3lnKLwGif85VTCZbwj/aMt3Z3/PdCi8d/d0HZMILQ=","AZJafRys7lYAEPhD71/J57ApRmfYcdSeNSOoj+CvVqo=","GZ/0u6+U7jh1YPu+w5XbGvnu2fUN1g3Dyiy5LpJFImM=","Jvf5HZWc2ukZB7KPsvFJ28J18T1Vd22lGoggD458rwk=","JM3dZBt8o7xsTSV4MqWuXpISbDvS6fBeAScxEU1i0MI=","GFR+31C9d7JlPCpTKEyZnc5dxp3WE4BNEKDulrylVzg=","KycXjspLeYunKy5rVmvf7MsqHmDYUE5MjskZLyuuuw==","MCDriK56z9Y0Jwnz075FzywUa83JBu5XlSc65LbnAEo=","VLgabTsfACIwxM1iP3ew+27so6/vr+aUVE7u7BoXDw==","BNHgPJNRC6b7Sb2atRBj07FeSOLtRJvaJ2XQMGX2z/w=","LKaijmuYuMgiCrwJGi+v6G8nHu8dk4ZLeyu1oWDdjZk=","KlhmAGeGUfFEvx5U3j1vj9UZ2q9KStmh8yIz6J+dZzM=","CpSp+4VKPFNBHXNs5Y3IIZayzRMUSiQKb+FzUIoiHZE=","LTNsZHy7VHjjpy8g9B0TXTX5b73ZsrKITmsj7CAeR/0=","A9vj+JlI+fRxXEkaSD379vb53PtYU8XTztcH8AUKIYo=","IkZuwVM4EUw7MWstmGyMDT0UgA2CJ1pC9Haw/9+UNbQ=","HC1sWxgvOU6NNpmekanu532nH1SQlh+3g6T45vhC5oc=","BPxWUVz4MkfjcOSICdO9JFq7UmONhrSKHLdDFn2yKU0=","Gq68kGF+WqS0+QNvzFCS2n7c6cEQ4+rwDX/Tmxeq7Sc=","AV99rZKMs05oWKLesvnZLEUqU1oJbF1xP3MZwMV35BM=","BgAoMHIhMj9G61Z3PFMg/aotcSOHW0IBduNLPuB56XI=","FXsojOybU1bmA3O/pD5nUR4qfmJJNlDI842Bn8NOWdA=","CI2+iPP+j9y+vDTOPwDwf9pBHXgOz/HaV2YK6/0S6/w=","CfE8iSE8gtW/04+Pi8/kb99APSjm00nsAXbjffnJEv4=","Bb/61TcirGxCI2EkwyAGaav/ptySP75RQcjkFXzTF6M=","KQp4KaTO8uJdL28oQhRjNEv95SID1MynNlc1N68zQh4=","CecgnaxxUWl74X0+OsUrDuZGeSm4eNgUrkzCc0s5NI8=","B2KfW3zT3VNt9qhmoHH7XfVjUvr9Dwl3Ec0WZ+o0QDk=","EWQd4K9dAztELc4fgzTq/UlZ8SIwTqbCF3w3fVXq4EU=","ECHoBtg95Mvss8FlDHYXdOg8rk7Luw3xMxAVDLraiPQ=","BK434ednbh089kKF9wQTXIzWQPcMiVve3VHe0mD7tp8=","KkkdKLMg/3e/ciG1n8wlNcfPycDxGl/cXknIN6cfAjk=","K6fCaVgRjwt1FETo6jUk1F/M79h0RhjmblVnnkK+KcY=","DGUW9Musi48pvpQGxsMJ3zTi2n2TETPko08p7GKD6bM=","KZGsx9tesxWfh2bEnWkgeQJbSApwZWQ17nDFaH2q6ww=","KddgW0E83dGSd5tzJeGvuOUu0+l+kq33AcenDBGMZI0=","JQe9N4j1fO/udU0/9akpgNzwYq5KP62T7ABZ6y/lRew="],["IZdwP860y/B8bb9GxK2T59FOVU22bQkQL/hIJHQ/5Oc=","EyLw//x+SFS9i1/CPnEGtR9ZvVBh2LVlrKL9Pv5RL3k=","GeQU+AOAqi0iITMRjDN9gqjFiUwviIYe5G9Ej6nWE1k=","IiQRmaTfnLfWUknZViytbGXxZGDnmnk5y/3W17kgnZo=","AwEGFzU4Tfzs+aMRwireMntRx4shFhX0HHf22F6KQbY=","Ip4dhsHygQ9KJjO3tLW7YbfcXRmslf2NN5VI/ytoUO4=","DjHc+cUyCagX7rKS6YlyfD9Wv/ZYg6/l/cKKw9++pnU=","Bo+Re7GwgF5bWIi2qXgkOVuu0ZW12gtxxCq9CRwu9Us=","HQv7i7kKwjQALYN3FWEyl4AqW7y2mqLajPq9gy9S17I=","DWfBgvv0HBjVr8tIviAjdBPwKmTb8J6vcfI6FPueIQM=","MFiQnLEDVXcGMEubtk2UrqTlBNj9qLgjE5lveWKISIY=","BNBqgBluEOZkrf79B10MygSWHuion0/W1gHuubYMjbs=","CrBi+NS17Q7CG9tC6z/LCoj6E6/K5FI9I4ZFUihAe1Y=","FzgHVHkq1fgZXjJ6WmPNdXDNGZS9ahMOAcH6Ghc9RjA=","LU83gO70/5mskW9LEt1XVhPLliG8X6CYDtmk7Iqt5Ww=","KrvvSBs2jKlx502uBGkUOfhFwQ0dV4lCabJ1wZaq+e4=","DyQyT4LWgjHdndb4wF9S2OrLmuAcyx87MCKCIjd9DlM=","JnYXMX9RRmVCle9gK5ElDbAQtF9HJM5+xUiEspxARZc=","AVf54vc3SYghuwGrEAHXFessM229/Lhnvs8KK7ZJDAY=","Dae+wMuY0zelLN8NZuipfyQilnE0aEilUurBTIowxwI=","FfyCDvUzAtynCfPuSAuhNxyRreefn1h/x4eNcxwFltE=","CEVxWt/KNcPoBXwPzUzmphKNDoEX2I9VHT7GWH0PQpY=","BCL3ROK3NglryHdaOQaJOmTNqHSqRFfStEKpp3GVbQ8=","FfQhVQv2Y51Gq1d5/Sax4RYY4El+BcyFxgiwD68zgqE=","BPF8rSug72+GAuk/W5iNXzV+Ya5fPsNQZvy00ae3IMg=","FzLvVmDYSuUMoJwCHrDXfx+yoAzHkFskeViMScSIZz8=","KbElAfp54IvCUlmYX3MM3OniQ0GS7IJuD0udVovTUbI=","IHyABqp4/ECoTbQK2CFC0PYbKN7fEOIgHYFc9PYnRZA=","CiVwTOTLdKlNe9y9tfomir1YnYj+RbLyyC+QMmzQSag=","ESEfOnGvMKABAcQj6kCpWFqe7HVodyXX7iifQo9A77I=","DgHou/XuYRRxOAzou4w0uTKsdulvqry3rSC+lhh8L6c=","HIlKFDBRPfNVI+IuT+n0EKQ96R2sc64zjHcv7x+3Q2M=","K+40k5LfoLW0oI7ljvVPAC4GqyaDT5SEPUj/DO1SbVw=","hKYMHXCIfZ8tI6jHcTMygp60HPMYEUn7Ijt6v/TX8A==","I6RQbJDAfzrhdqDiv2f1f4jUWJjJe83ryKgmOrYCx8U=","GrZolqHflcAgi5kOLGNHBzlKERDLMUu4LgouK0lYruc=","LGuEKqvrhO3knlWdjuplgpP/S7qTJbWh1MtknTF/RhY=","FjIa9jhxMowriPRt9DK+mqFLAIuT+FzZcd2YbcFtLjU=","E9ZHII09vMnfENHuNbWY5sjthWCPgbppUwiOe8bbc+w=","Acau2p4Ppp9RQ+byLnR7fnTmkrklTVXGG4kEcMvX8Gs=","KH10pfoDpO1lvUp8ba8DNBj0dMfdm5V78rF5ZcrAJLE=","J6Qye+sLPgzCGYBbPwXoVL7c2ht8k/EWkf/Wu3al0Ok=","JxoDoAC/QS5/z+iRi6ponGaCQXgD9bMC8a4waVyOZ3A=","GkQ2IA5NC+ZdLw9AABV8lX/uUV5ZHItUvNRsAtWZI18=","G86TlKXa0KTO41uOmbSzwM7gWLiuT94wHDFFpaepTHY=","KxtP8rwYa33anD4F3Uky845qfASwrwg5RBpZchJdyQI=","E8h9Dkv6STzCoZexydtJQml5rf7kcUBI2GXU9ulfaZs=","DoYUltG1TjUwqg3GTGaD7A0BpOPRxp1Q9NZyC5gczWI=","DbY71G4GvK/7ywPl3T+qiPJqCqpygZjF0JpIP8QZcQA=","L4/KOkS/nqmUUuGgVYhq98lYULcWIirYnwIZBU1F24c=","Bbe7PlpOKUY5XR1t3VQb2cFmz6GVbRYXE+fjUPWUfXM=","IOTmxHpovjF1/PWno/i/ezshmCA7RVLtYguVk7ZuVIM=","FUoqAjecdpW6R4PhXRChR1YO4rTQOgSguQHa3nLfSGI=","FW8CyrX7Dn5voMdDv9ZHFuFeXlDhJ3SAWxx03qicU0U=","HSWCGFVtAVLwo74EKxvRRndKYW/8fnMT6VGbUEExiRI=","Fgpdo1XUaUEuVTWAT5nfuPqDnXziy3r6UMH9A2IZ9Og=","FpPAyWuV9wN/r2oYKJgUxoI3hw7clKcsiD6yx1HV7EM=","Kw3w9GP2nKIGrVxKEV0aaoPV4Kwyi9Ro81gmqWjVcIs=","GcrSPBSpvtDhWfJQvshlXAcUm7oEFh/gAvdpVMoZK2A=","JYV+rmvjB7ZTw2pAkKOWPWCEJBDgTFci3+3ij6ZF9U4=","KayXFJVbepyU55We++uhfASDmte7q9xkO5hArkMVX3I=","LmN9uth23VKnKE2yZlk6qFsgIL80CAJiXnT0Wizfli0=","BGjYl3n63tvbTwCThYETxQYDIaqvCCpT1E/HTGXn7oQ=","CRTO/VGigi78+GKdV+tbbscZWpAId2LsiBTxS95kdSI=","EgqdPLyli5F/TmERfH/iGQum0jjON0lJd4xAptF2cH0=","HPHHWhssoJrGVSFcswizns75bXRuy8NLN1g72OBIDV4=","BRHK3C1DF2mpU9DSNVzdPYwT3KemxbGQBby/PFvPd3A=","HiqsBj9DA+JKKkSxvtVoikMnk1bceKdy5Nz60FYuXdE=","Fyo5bUHPsrEkHglqpB86R4gwPYgk1UloceA8uVkPibo=","C94GgjfMQarbescY1Ma5Fst/Nfs5nrslFTB+YASWni4=","FSLR+PDLkhSz9mAtn4Z70q4HqPp3rvvDFTr001DZM+4=","FX1WBTrKLEzTD3ujTl1BuKY2lh73jB3qF1nc6szR7Wk=","EK/4wPovJfWKKZ4ixzLxuQFhb25LxvY695u5PUX8GI4=","CpVX03+7Nc4Eby3z2L2c/M7fhe7yVJhD2n8sLjbSveQ=","B1Ap2DUaSUkXATbeZsF5qNbua1a4lZivGZUo146NLFk=","KqdnyRE5hpayMC/hWtM+81xsl2GOZy+DeqT9QpMDVc8=","AU2Zx0F6Mp/2LTKChCHhuKAx0wJCsoXIak9jeV43ZiM=","GG4beAiUZ0eDEMNeyp0gWMCou44upcMk8TFOR4oSiU4=","LKkwbvYt+xrVgkSsW9cLC8hPhjaPbJvU4V3a7UMumDg=","F2MNYwdihYVmHqrulDjGcWD36vbQPTymNk1K3aSb3yc=","IRh8Hf+udDQKSIzfCM4yIiZUSBZ4CvAWCY2MOcfnLjE=","AdshC5PDIKGLqxdpruYydr2ZrIkDWw2jJ80Gy3CFSso=","GLtviYBcG9WdjXrRCdXya00YgT9xzzqrom7olnCUBOE=","CcCmwtecwGAj8/Qxlsm4pgpVcW0sfKCV2Eml1n/2/pg=","C+a31s/tlSj00a4wbzE4MG6nyBy/kD6biE6rUITcTBY=","Fvx8gIVSsTYtinOb/fbG2+cLAGEXgPtIGNQk1eAX7Vw=","DzGpHm23XfkEvmuxT+cnFCnleH+akY0csSitdqyUiDY=","IwpmziT+3dRfz8tcp+TvsSRhp8CgtnOnOyUpJdMQ1Ig=","Be03B+etNHiuUIEmy6J0dDz+hoW0YVP22joLS4PqktA=","BGXDcNtAuPFLT275E1UMEbyyg5rHB+L+mpwxtDz42Tg=","hfQriUhzp0UaYP7AU5+f+LLgpJXkPbe5XDp1xXwg7Q==","Los66TaMnB8VQq5zTNmVhp+BqsZJAvsdNZcCLaCPmTg=","FhSF1PqGIOb9CbCIFZxOIjFVAZv+nq4o+YcP8ZzP8xQ=","C25AAznl52wdIA/SeIRZnUc92Y+t6eZIlAgz6jK3VBY=","Jh7jH61HwNt7wEb3GEN+5Rj+c+ySweIDFV2PKE1EsxA=","BOEGCJt3bQGihLhK3N26S/DuVsLIWsWEtNk49FAjJS4=","BLFOifQih97jYUKhdxj3YVeJyfliO1NK/v/PnH4mRJ8=","HVWRWyC2BTTx2J8vjElWgSP8tMbZGXNz5UZi59nrg7A=","vwT1t9F4p37jL+VDvkaOHImqRXovTWaZrqdD+ASUuA==","G7HzHoh2R8tFuLxb4YXiBukazPhuXOW8GzmvEvhX6j4=","JvC0IUIS6oAwq6dbLraZ6ErfJLxLhWo1IrgsHtyofp0=","Gtfhxv6t4mnAdrZyObMW58/BlLA2taU/kgf0V1mcX8o=","EZR87a2FnwL/tLmegQhRL6MlIkrX4bz4KyjGGomEADU=","HvTwMw1hRCKO9sw27aDReThMTcGFjJXeEtBw0RxDNIw=","EDGr67Aha+UGwEplFNRx8YsNwbWpthbIekZbaJzRM20=","I/l+toD1oTs+jarlcqvirA3ZLqq0cwAvBwjmtghLLfg=","KJsrouPI9mW5Sk1ztb331mh0aKqoTvf24E/hI2WeQbI=","DUD3E7MbLQQdPgHiUErxACC/xFvVu95PSxM/Y1NgkLU=","KSBNc86Es/u+BHx0mX7nmfkpI80W7OHrYnXItxZZ8Uk=","I80UtQ9BKfpWJj/vvnR15RyF9nzfOKmudjetBK1kTGo=","FgOIe8fmlWrk/1ufRCOyKTq1K2my7AIay5C7bajcOIM=","ITfZnCQUXlLq0BKbsiBpDF/49tv/dVyEZwVLZFx0sPk=","Hz1tE0kJao4FlEQ6SHOG+fUbL8Nm6RCplS1PCz2+xBQ=","IUjhqrPpyCopfQSvgZHisFzscbDNa4tOB5Bh3QDwGgA=","F/sHIbM3VAYCirbwSIKiAuaAHLu7ULrcvV12DVnmDFQ=","BE+K3jNFVM1hB0OquroRluABBudUz/iwiKxponPtB00=","LhDnTTBnlmH8Oslgt8lny8UAKdLqRjq471VjPMVAUkM=","HkQDCDJSbOMtVAxc3S3vf5AFCbyAGf7F44hIs1dtuo4=","LBe9evRj1S0/1+hyPREHg2lWHKPE7OSPEpitq+fIIuA="],["EjmS3zudqmUTnsE/u1L300jhNDM2hMFZb+sOjYw61ZY=","L6RvXbqZCc6ZhKAeKvMLVQ3+yXi+krSRGaOVnH9iNwM=","Idj5TTvZjwtjp6rLF1ssyhOy3YqM9o/DbZSuKUAbLSw=","GowGxhBG4Pjcajm8V66g0H/X2zTmj3NXnaieEWr4frg=","KYzXBG9YwMq3dSOlim/f0UAbieeuXu9JlEQtFn960dM=","DqxzeWZxXfSiCzGraT7ahqB/PoMPykdaZXTWf8Xxn2M=","Brm3GLs7bUXgy+bV2aLwlqd76wVoIXUNByJirypwoz4=","C8za1uix/fuoRqlVP8eQWz+W5DXWU+7DlyVl4fu8MCo=","IcLf4g3FpyFnu6vdlaGMFH+Eg8t8Di5oSh7kAS9L2S4=","JK1rJ1Wmpu5R2S+jDfJIkyDlCoznEyUEzsow6UgAebA=","BnpG/ExSxuoQLNN7RHj9vbXnSYd+xDe8t6y/tk5h7Mo=","GiYjl1ZS1Hb0ucrcS4UhkmiRDHw7LQrhL9R+sWIlfzU=","Al+M4wRBzobmsh1SyodGPOwpmj71QyINcrwkkf3ATEs=","Gs3wtI2KR4mps6xf+JYrFumlbIgOIjZoolAYZXg0ql0=","FNP6fuHNK4vi9C629LlbuLHRVtd/FD+uPoK7jFYQ6nc=","A6Ik9kcKZPKU+k3WdSTeWLGPcIEuCTwOHAazHXWKET8=","LIIq6nFAKAfsIdsRoIlmj84ubC0jF03j62lISlMUhSc=","EwW2bokOl+EdUncaYFCQJrrt0OC9XnlxNCWcdIoomZU=","Kx6AvF4/VG9LETmed6B4TrfEOcVG6fuibrbHfYnBRRc=","FWIyaosNVDa9e9Fz0/nmnDvnTceScLT7HoU51YTqwdE=","CMmsqJtEfnRovx6m2wgDRramgn7/H7gTks3n9hMJELQ=","E44ALowMWXVQtyrL/JxQlSF1uoXAYbfpc9h9l5R2tUs=","AxfuQ+b044eWghrS1VhE0BK/xcK5kPpItJHvfGNyvcM=","G2CDH8EVIdEi2c3G/0XHAF5qFmcX56oWhcsobJ7MmSs=","LnPTXrqbQ6UQDeF7ulxZ2HH/oqm1IrBkXig6iSWdRG8=","IqTTy3dQ5fTS8DgSlFePaYvn1ngxFZV5P/bx7j7/LfQ=","JHG3qWmvKVudQHY0pIahyCzCc1BtianNXIClO0Dhk18=","AZe3Ph15KhBkUqw9Mf0CteFhf1RC/ia+9f/9t+FJd1Q=","Cy33M7NUHHiDYqXev4GKCHvZyanTnB/PJWStOYC66Pg=","HMZuooWzwJy0ZTKDucbuZrfno8riDNUDFdr+OpIROiw=","AlthUrqevoNsL1Z50PiRswuWrj4GphMtovb20hL8S1I=","GoiaoWRhNwpOdepr9/+UBcKWVilZlrC1iEIWMR7P16I=","H2+vQc9wjYMHRCpRlMHTjcPoM8zE7N/biqRMXp/OVm4=","FwIh41/gTaIwPeoUERP3cRxlHcpXvrf6NiTSiBCF19M=","H0/SVDQPlQn8HOByv3lcmrz+3V+ArY6+onJr5HQZexs=","K7T6ac1jHVtBiDe5FV2wLVSJ5/65Ky61oXvugDEFh4A=","L8c3pMEHPAGEMs0PnovFt1wZ+U9VQxQlHVEPx4i3nV8=","KZ040WgDYWqQZdGCDiuGCCgOgVf36e9blU6z0r6yZG4=","Buj6ZPb54qZmUODwArKvp+DCya5BcHLGi48fMbIXvWc=","FR4u/6Du964olFBgF59Kr9o